Ember.js
Ember.js | |
---|---|
![]() | |
Тип | веб-фреймворк, библиотека функций и библиотека JavaScript |
Написана на | JavaScript[2] |
Операционная система | кроссплатформенность |
Первый выпуск | 8 декабря 2011; 12 лет назад (2011-12-08) |
Последняя версия |
|
Репозиторий | github.com/emberjs/ember… |
Лицензия | лицензия MIT[3] |
Сайт | emberjs.com |
![]() |
Ember.js — свободный веб-фреймворк на JavaScript, реализующий шаблон MVC и нацеленный на упрощение создания масштабируемых одностраничных веб-приложений[4].
Фактически является версией 2.0 фреймворка SproutCore (в декабре 2011 года был переименован в Ember.js для отличия от SproutCore 1.0)[5][6]. Основные авторы — Том Дейл и Йегуда Кац, всего в основной команде разработчиков — более 10 человек. Применяется на таких сайтах, как TED, Yahoo!, Twitch.tv и Groupon[7].
Основные принципы
Основные внутренние концепты, используемые фреймворком — маршруты, модели, контроллеры и шаблоны.
Маршруту объекта соответствует URL-адрес, который определяет текущее состояние приложения. Маршруты определены в единственном объекте маршрутизатора[8]. Концепция маршрутов подчёркивают важность URL в управлении состоянием приложения.
Каждому маршруту соответствует модель, в которой содержатся данные, соответствующие текущему состоянию приложения. И несмотря на то, что есть возможность использовать jQuery чтобы загружать с сервера JSON-объекты, большинство приложений все-таки использует для этих целей библиотеку с моделью данных, например, Ember Data.
Контроллеры используются для того, чтобы добавить модели некую логику отображения. Ранее стандартной практикой было наследовать контроллер от ObjectController если модель представляла собой один объект, и от ArrayController — если модель была массивом записей. Сейчас эти базовые классы считаются устаревшими и нормальной практикой считается обращение к свойствам модели из Ember.Controller.
Шаблоны написаны на языке HTMLBars и описывают пользовательский интерфейс. Шаблоны используются для построения HTML кода приложения и позволяют встраивать в него динамически обновляемые выражения.
Литература
- Joachim Haagen Skeie. Ember.js in Action. — Manning Publications Company, 2014. — 240 p. — ISBN 9781617291456.
- Jesse Cravens, Thomas Q Brady. Building Web Apps with Ember.js. — O'Reilly Media, 2014. — 188 p. — ISBN 9781449370909.
- Brian Cardarella, Alex Navasardyan. The Ember. Js Way. — Addison Wesley Professional, 2015. — 400 p. — ISBN 9780321994530.
Примечания
- ↑ Release 5.11.0 — 2024.
- ↑ The emberjs Open Source Project on Open Hub: Languages Page — 2006.
- ↑ https://github.com/emberjs/ember.js/blob/master/LICENSE
- ↑ Aghassipour, Alexander; Chacko, Shajith Enterprise Apps Are Moving To Single-Page Design (англ.). TechCrunch (30 ноября 2012). Дата обращения: 14 января 2015. Архивировано 19 января 2015 года.
- ↑ SproutCore 2.0 becomes Ember.js (англ.). The H (13 декабря 2011). Дата обращения: 14 января 2015. Архивировано 2 февраля 2015 года.
- ↑ Amber.js (formerly SproutCore 2.0) is now Ember.js (англ.). yehudakatz.com (12 декабря 2011). Дата обращения: 14 января 2015. Архивировано 22 января 2015 года.
- ↑ Пользователи Ember.js (неопр.). Дата обращения: 14 января 2015. Архивировано 6 февраля 2015 года.
- ↑ Ember.js - Routing: Introduction (англ.). emberjs.com. Дата обращения: 21 января 2014. Архивировано 10 января 2015 года.
Ссылки
- emberjs.com — официальный сайт Ember.js
- Проект Ember.js на сайте GitHub