title: Is data binding a bad idea?
body: <p>Another discussion (we've been having a lot of them these days!) in our work is whether data binding is a bad idea or not.</p>
  
  <p>Personally, I think it is a Bad Thing™.</p>
  
  <p>My reasons are thrice:</p>
  
  <ol>
  <li><p>It circumvents my well architectured MVP framework - with databinding, the view communicates bi-directionally with a model.  Ewww.</p></li>
  <li><p>It promotes hooking up view controls to datafields at design time.  In my experience, this leads to vital code (binding column A to Field X) being obscure and hidden away in some designer file.  IMO this code should be explicit and in-your-face, so that it is easy to modify and see what is going on, without having to use a clunky designer interface.</p></li>
  <li><p>Relating to Point #1 this direct binding makes it harder to isolate each component (view, model, controller/presenter) and unit-test.  </p></li>
  </ol>
  
  <p>The pros are that it is easy to set up, and you can take advantage of some nice features (validation etc) which come with the plumbing already done for you.  </p>
  
  <p>But for me, databinding becomes much more of a hindrance when dealing with a large data-centric application.</p>
  
  <p>Any thoughts?</p>