Performance Testing Knockout, Angular and Backbone with Selenium2 - Paul Hammant's Blog

Interesting note on the performance of these technologies. Are saying? which choose to do a project? and I'm looking for one of these technologies for a project

http://paulhammant.com/2012/04/12/performance-testing-knockout-angular-and-backbone-with-selenium2/

I don't think that this post is conclusive in downgrading angular.js due to performance problems. So you're question leads basically to comparing these three technologies...

They solve very different kind of problems, e.g. backbone.js is in fact only a library for building event-based MV* architectures, while knockout.js and angular.js are more opinionated frameworks. So it's really comparing apples to oranges... But people try anyways: http://codebrief.com/2012/01/the-top-10-javascript-mvc-frameworks-reviewed/

None of the frameworks are made for performance. They are made to give direction to the developer.

Backbone is by far the least performant but even with Backbone if it's tuned right you can get a high FPS on tablets, mobiles and desktop.

Rendering Performance means:

  • only create DOM elements once, update DOM with new model contents
  • use object pooling as much as possible
  • minimize image loading/parsing until the last minute possible
  • watch out of JavaScript that triggers CSS to relayout
  • tie your render loop to the browser's paint loop
  • be smart about when to use GPU layers and compositing
  • opt out of the Garbage Collector as much as possible to maintain high frame rates

I have a PerfView on github that extends Backbone to make rendering performant. https://github.com/puppybits/BackboneJS-PerfView It can maintain 120FPS in Chrome and 56FPS on iPad with some real world examples.