Ember.js — Википедия

Ember.js
Логотип программы Ember.js
Тип веб-фреймворк, библиотека функций и библиотека JavaScript
Написана на JavaScript[2]
Операционная система кроссплатформенность
Первый выпуск 8 декабря 2011; 12 лет назад (2011-12-08)
Последняя версия 4.12.0[1]
Репозиторий 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.

Примечания[править | править код]

  1. Releases (англ.). Дата обращения: 29 апреля 2023. Архивировано 1 мая 2019 года.
  2. The emberjs Open Source Project on Open Hub: Languages Page — 2006.
  3. https://github.com/emberjs/ember.js/blob/master/LICENSE
  4. Aghassipour, Alexander; Chacko, Shajith Enterprise Apps Are Moving To Single-Page Design (англ.). TechCrunch (30 ноября 2012). Дата обращения: 14 января 2015. Архивировано 19 января 2015 года.
  5. SproutCore 2.0 becomes Ember.js (англ.). The H (13 декабря 2011). Дата обращения: 14 января 2015. Архивировано 2 февраля 2015 года.
  6. Amber.js (formerly SproutCore 2.0) is now Ember.js (англ.). yehudakatz.com (12 декабря 2011). Дата обращения: 14 января 2015. Архивировано 22 января 2015 года.
  7. Пользователи Ember.js. Дата обращения: 14 января 2015. Архивировано 6 февраля 2015 года.
  8. Ember.js - Routing: Introduction (англ.). emberjs.com. Дата обращения: 21 января 2014. Архивировано 10 января 2015 года.

Ссылки[править | править код]