The main features of an MV* application are routing, data binding,
templates/views, models, and data access. In this post I’ll describe
these features and show code examples from AngularJS, Backbone, and
Ember for each feature.
Historically, a controller would respond to some kind of user input, and
communicate that input to the model, or back to the view. In MV*
frameworks like Backbone, though, the controller logic is handled inside
the view itself.
event handling inside the view, communicating with the
a simple way to call super — the function of the same name defined
higher on the prototype chain. If you override a core function like
set, or save, and you want to invoke the
parent object's implementation, you'll have to explicitly call it, along these lines:
Backbone is an attempt to discover the minimal set
of data-structuring (models and collections) and user interface (views
and URLs) primitives that are generally useful when building web applications with