Ember JS

Brief description

Ember.js — free JavaScript framework web applications that implements the MVC pattern, designed to simplify the creation of highly scalable single-page web applications. The framework is used by companies like TED, Yahoo! Twitch.tv and Groupon.

In December 2011 frame web apps, SproutCore 2.0 was renamed to Ember.js in order not to be confused with version 1.0. The authors of the project are Tom Dale and Yehuda Katz, Ember and only a Core Team of over 10 developers.

The basic principles

Routes are one of the fundamental principles Ember.js and underline the importance of the URL in managing application state. The route object matches the URL that defines the current state of the application. Routes are defined in a single object router.

Models, each route corresponds to a model that contains data corresponding to a current state of the application. And despite the fact that it is possible to use jQuery to retrieve JSON objects, most applications still uses the library with the data model, for example, Ember Data.

Controllers used to add models some rendering logic. Previously standard practice was to inherit the controller from ObjectController if the model was a single object from the ArrayController - if the model was an array of records. Now these base classes are deprecated and the normal practice is to access a model property from Ember.Controller.

Templates written in the language of HTMLBars (HTML handlebars = HTMLbars) and describe the user interface. Templates used to build HTML code of the app and allow you to embed a dynamically updated expression.