title: Angular.js Backbone.js and other MV* patterned js libraries?
body: <p>I am quite newbie to web application, and more specifically to this <code>MV*</code>pattern. We are making a web application and we thinking of departing from jQuery, not completely, but we are trying to implement a client side language with MVC, MVVM, or MVP support. Basically something that separates views from model. Being new to this <code>MV*</code> pattern I stumbled upon <a href="http://codebrief.com/2012/01/the-top-10-javascript-mvc-frameworks-reviewed/" rel="nofollow noreferrer"><strong>this site</strong>.</a></p>
  
  <p>It basically list (almost!) all client side language/framework that support this <code>MV*</code> pattern, and after visiting it I am really confused. Because according to this site..</p>
  
  <blockquote>
    <p>At the end of the day, Ember.js is the only framework which has
    everything I desire. I recently ported a relatively small Backbone.js
    application over to Ember.js and, despite some small performance
    issues, I am much happier with the resulting code base. Being
    championed by Yehuda Katz, the community around Ember.js is also
    amazing. This is definitely the framework to watch out for.</p>
  </blockquote>
  
  <p>But on SO, I found <a href="https://stackoverflow.com/a/9408089">this</a>, and it makes me think that angular is much better, while on SO again, <a href="https://stackoverflow.com/a/10264263">this</a>, and <a href="https://stackoverflow.com/a/11260673">this</a> which makes me think it might be backbone what I am looking for.</p>
  
  <p>To make the matter worse, the tests show totally different result.
  Here  </p>
  
  <p><a href="http://jsfiddle.net/HusVw/1/" rel="nofollow noreferrer">http://jsfiddle.net/HusVw/1/</a> <code>Backbone clear winner</code>  </p>
  
  <p><a href="http://jsfiddle.net/ericf/NrpcQ/" rel="nofollow noreferrer">http://jsfiddle.net/ericf/NrpcQ/</a> <code>Backbone winner again</code>  </p>
  
  <p><a href="http://jsperf.com/angular-vs-knockout-vs-extjs-vs-backbone/2" rel="nofollow noreferrer">http://jsperf.com/angular-vs-knockout-vs-extjs-vs-backbone/2</a> <code>angular winner for less data for more its knockout</code>  </p>
  
  <p><a href="http://jsperf.com/knockout-js-vs-direct-dom-manipulation/3" rel="nofollow noreferrer">http://jsperf.com/knockout-js-vs-direct-dom-manipulation/3</a> <code>Backbone again</code></p>
  
  <p><a href="http://jsperf.com/angular-vs-knockout-vs-ember/33" rel="nofollow noreferrer">http://jsperf.com/angular-vs-knockout-vs-ember/33</a> <code>no way its ember as the site mentioned</code></p>
  
  <p>So, basically this all is totally confusing me, I can't decide what in web's name I should learn, and what should I implement in the site. As in tests <code>Backbone</code> clearly stands out, but I've heard a lot about <code>knockout</code>, but the SO links I mentioned say about <code>angular</code>? I know it might be dependent on the application I am currently developing, but I want a broader view, what would be useful not only for this project, but for a longer term? In which case you'd prefer which framework? Or Should I just learn them all?(jk, can't really do that in a plausible time.)</p>
  
  <p>To make things more f**** up, I heard about <a href="http://www.dartlang.org/" rel="nofollow noreferrer">dart</a>, and <a href="http://en.wikipedia.org/wiki/Dart_%28programming_language%29" rel="nofollow noreferrer">wiki</a> says..</p>
  
  <blockquote>
    <p>The goal of Dart is "ultimately to replace JavaScript as the lingua
    franca of web development on the open web platform."</p>
  </blockquote>
  
  <p>So if js is going to be replaced, why the hack I am even considering learning these js libraries/framework(s)?</p>
  
  <p>So, basically, its all messed up and I am totally confused? Can any one please help me decide?</p>