Backbone is a JavaScript library used for making Single Page Applications (SPAs)
jQuery is awesome. Underscore is awesome. But Backbone is even better because it combines both, and gives your web app structure.
SPAs have these benefits (over server generated pages):
-
Better User Experience. Code running in the browser is more responsive than waiting for a server generated page.
-
Models "get your truth out of the DOM". There should only ever be a single source of truth for any given item of information in your code.
Why do we still teach Backbone over newer, more trendy frameworks?
-
Because it's a library, not a framework (smaller)
-
Because it's used at scale: Walmart.com. Enough said.
-
Because you learn more JavaScript by using it than Angular or Ember
Backbone is used at other large companies, too:
- Trello
- AirBnB
- SoundCloud
- Foursquare
- Hulu
- USAToday
Backbone uses the MVC design pattern:
