Автор (ы) | Иегуда Кац |
---|---|
Разработчик (и) | Ember Core Team |
Первоначальный выпуск | 8 декабря 2011 г.; 8 лет назад (2011-12-08) |
Стабильный выпуск | 3.22.0 / 5 октября 2020 г.; 25 дней назад (2020-10-05) |
Предварительный выпуск | 3.23.0-beta.0 / 5 октября 2020 г.; 25 дней назад (2020-10-05) |
Репозиторий | Репозиторий Ember.js |
Написано на | JavaScript |
Операционная система | Кросс-платформенная |
Тип | Библиотека JavaScript |
Лицензия | Лицензия MIT |
Веб-сайт | www.emberjs.com |
Ember.js - это с открытым исходным кодом JavaScript веб-фреймворк, использующий шаблон компонент-сервис . Он позволяет разработчикам создавать масштабируемые одностраничные веб-приложения путем включения в структуру общих идиом, передовых методов и шаблонов из других шаблонов экосистемы одностраничных приложений.
Ember используется на многих популярных веб-сайтах, включая Apple Music, Square, Inc., Discourse, Groupon, LinkedIn, Live Nation, Nordstrom, Twitch и Chipotle. Хотя в первую очередь это считается фреймворком для Интернета, в Ember также можно создавать настольные и мобильные приложения. Наиболее ярким примером настольного приложения Ember является Apple Music, функция настольного приложения iTunes. Торговая марка Ember принадлежит Tilde Inc.
С самого начала Ember был разработан вокруг нескольких ключевых идей:
Как и Ruby on Rails, Ember следует Соглашению, а не конфигурации (CoC) и принцип Don't Repeat Yourself (DRY). Он был описан как весьма самоуверенный фреймворк, созданный для обеспечения максимальной гибкости.
Ember состоит из пяти ключевых концепций:
Ember также предоставляет внедрение зависимостей, декларативный односторонний поток данных, отслеживаемые свойства и автоматическое обновление шаблонов.
Ember.js является одним из компонентов полный фронтенд-стек, созданный и поддерживаемый основной командой Ember.
Ember-cli стремится принести соглашение, а не конфигурацию в инструменты сборки. Утилита командной строки на основе выполнения команды ember new
генерирует новое приложение Ember со стеком по умолчанию. Это обеспечивает:
Другие функции включают:
ember install
. В настоящее время доступно более двух тысяч дополнений, включая дополнения для CoffeeScript, LESS, Sass, Compass и Mocha.Ember Data сопоставляет модели на стороне клиента с данными на стороне сервера. Затем он может загружать и сохранять записи и их отношения без какой-либо конфигурации через RESTful JSON API, который реализует спецификацию JSON API, при условии соблюдения определенных соглашений. Однако он также легко настраивается и может работать с любым сервером с помощью адаптеров и надстроек. JSON API имеет реализации серверной библиотеки для PHP, Node.js, Ruby, Python, Go, .NET и Java. Также задокументировано подключение к серверу на основе Java- Spring.
Первая стабильная версия Ember Data (помеченная 1.13 для согласования с самим Ember) была выпущена 18 июня 2015 года.
Ember Inspector - это расширение, доступное в настоящее время для веб-браузеров Mozilla Firefox и Google Chrome, которое, как утверждается, упрощает отладку приложений Ember. Возможности включают возможность видеть, какие шаблоны, компоненты и представления в настоящее время визуализируются, видеть свойства любого объекта Ember с пользовательским интерфейсом, который вычисляет привязки и вычисляемые свойства, и получать доступ к объектам своего приложения с консоли. Если используются данные Ember, можно также увидеть записи, загруженные для каждой модели.
Fastboot - это аддон Ember CLI, созданный Ember основная команда, которая дает разработчикам Ember возможность запускать свои приложения на Node.js. Эта функция позволяет конечным пользователям сразу же видеть HTML и CSS с загрузкой JavaScript в фоновом режиме и переходом к работе после его полной загрузки.
Liquid Fire обеспечивает поддержку анимации для Ember Приложения. Возможности включают анимированные переходы между маршрутами и между моделями в пределах одного маршрута. Он предоставляет DSL для построения отношений пространственных маршрутов, четко отделенных от деталей реализации на уровне представления. Простым примером может быть анимация перехода экрана, чтобы новый экран появлялся с одного края браузера.
См. Блог о выпусках полный список релизов и подробный журнал изменений.
Ember следует шестинедельному циклу выпуска, вдохновленному быстрым циклом выпуска Google Chrome. Каждые шесть недель выпускается новый выпуск, и в то же время публикуется бета-версия следующего выпуска. Обычно перед выходом следующего крупного релиза создается несколько бета-версий, примерно одна бета-версия в неделю.
Начиная с Ember 2.0, связанные проекты, поддерживаемые основной командой, имеют согласованные выпуски и имеют общий номер версии с самим Ember.
Ember следует соглашение семантического управления версиями. В частности, это означает, что критические изменения вводятся только в основных номерах версий, таких как 1.0, 2.0 и т. Д. Хотя новые функции могут быть добавлены в отдельных выпусках (1.1, 1.2...), а функции устарели, никаких критических изменений в общедоступных API представлены, и обновление основной версии должно быть максимально простым. Инструменты также находятся в стадии разработки, чтобы упростить процесс обновления.
В дополнение к этому процессу был предпринят ряд шагов для смягчения проблем, связанных с обновлением до версии 2.0:
Процесс следует основному Ember Принцип «Стабильность без застоя» резко контрастирует с планами обновления аналогичных проектов, таких как AngularJS.
Статус проекта можно отслеживать через протоколы собрания основной группы. Однако основные изменения в Ember проходят через процесс запроса комментариев. Это дает сообществу Ember возможность высказать свое мнение о новых предложениях. Известные RFC включают:
В декабре 2011 года инфраструктура SproutCore 2.0 была переименована в Ember.js, чтобы избежать путаницы между каркас приложения и библиотека виджетов SproutCore 1.0. Фреймворк был создан Иегудой Кац, членом основных команд jQuery, Ruby on Rails и SproutCore. Как и многие другие проекты Каца, он отстаивает соглашение над конфигурацией.
В отличие от других проектов, таких как AngularJS (Google ) и React (Facebook ), которые имеют поддержку одной основной компании, Emberjs имеет множество спонсоров. К ним относятся Yahoo!, LinkedIn и Bustle, которые являются основными пользователями платформы.