Backbone aims to solve the code coupling problem by providing a model-view framework with templates that separate programming concerns in a way that should feel familiar to developers coming from either a desktop application or server side programming background.
It isn’t possible to talk about Backbone without also discussing Underscore.js, Backbone’s prerequisite helper library. Underscore provides functional programming support in the form of utility functions like map/reduce, array iteration and filtering, and advanced object binding and chaining. jQuery or Zepto, although not strictly required, are supported by Backbone. jQuery in particular will play a role in the application developed over the course of this book.
Models form the nucleus of your Backbone application. Although models may be transient app-only creations, in most cases the model will represent an object stored in a database.
Backbone’s philosophy has models responsible for storing, ...