- PVSM.RU - https://www.pvsm.ru -

От переводчика: После позитивного отклика на прошлый выпуск [1] дайджеста, я решил продолжить перевод этого популярного источника последних новостей из мира Ember.js.
Как и в прошлый раз ссылки на материалы, на которые я находил перевод, я помечал (рус). Все ссылки без пометки указывают на англоязычные ресурсы. И как и всегда, на русском вопросы можно задать в нашем ламповом телеграмм-канале [2]
С Новым годом, Эмберисты!
На этой неделе мы хотим представить вам специальный номер нашего издания, посвященный Ember Octane!
Мы собрали как можно больше информации об этом новом издании Ember. Таким образом, в этом посте вы найдете полезную информацию, которая поможет вам получить максимальную отдачу от Ember Octane.
В этом выпуске: что такое редакция Octane? ♀️♂️, где я могу узнать больше?, как перейти на Octane? ️, отзыв от компании Outdoorsy, покорить Octane с помощью Ember Atlas и Octane на EmberConf 2020 !
Octane — это современный Ember, и я очень рад, что мы смогли пересечь финишную черту и закончить его разработку. Желаю вам получить много удовольствия от создания приложений! ~ Йехуда Кац (@wycats [3])
Начиная Ember Octane мы вводим понятие издания. Давайте посмотрим, что означает издание в Ember и какие функции вы можете найти в выпуске Octane.
В Ember при создании издания [4] мы сосредотачиваемся на определенной теме, чтобы в итоге получить целостный опыт программирования. Например, выпуск Octane ориентирован на продуктивности и производительности!
Наличие выпусков помогает вам и командам разрабатывающим Ember во многих отношениях:
Вы можете увидеть общую картину того, как новые функции фреймворка работает вместе. До этого вам, возможно, приходилось постоянно следить за последними RFC (Requests For Comments [5]) и комментариями к релизам, чтобы понять, почему какая-то функция была добавлена или удалена.
Людям, которые не следят за Ember внимательно — например, вам или другим людям из мира JavaScript — было легко пропустить значительные изменения, происходящие со временем. Издания помогают нам продемонстрировать рынку силу Ember.
Редакции дают возможность обновить документацию, идиомы, аддоны и инструменты Ember (такие как Ember Inspector, заготовки (blueprints), codemods и сообщения об ошибках). Конечный результат — это цельный опыт для разработчиков!
Многие новые функции объединяются, чтобы сформировать новую компонентную модель и новую систему реактивности для Ember. Эти два больших изменения заметно улучшают опыт разработчиков.
Вы можете найти полный список функций в Ember Guides [6]. Мы же выделим несколько основных ниже:
Компоненты Glimmer предлагают значительно упрощенный API как для шаблона, так и для класса поддержки. Передайте привет внешней семантике HTML и аргументам в пространстве имен!
Модификаторы (modifiers) позволяют вам взаимодействовать с DOM — анимировать элемент, скролить к элементу, автоматически фокусироваться на первом вводе формы и т. д. Модификаторы работают с любыми элементами.
Отслеживаемые свойства (tracked properties) упрощают синхронизацию DOM с изменениями JavaScript. Вам больше не нужно писать и поддерживать списки зависимостей.
Я немного взволнована, потому мне кажется, что Octane значительно легче учить. Это отлично подходит как для компаний, которые нанимают разработчиков без знания Ember, так и для начинающих программистов. С включенным по умолчанию ember-auto-import [7] мы можем работать с более широкой экосистемой JavaScript. Без особых усилий можно использовать ваши любимые библиотеки из npm. ~ Джен Вебер (@jenweber [8])
Если вы хотите попробовать Ember Octane, вы можете узнать больше о новых API и лучших способах создания современных Ember-приложений. Мы настоятельно рекомендуем вам следующие учебные ресурсы:
Сообщество Ember усердно работало над тем, чтобы подготовить официальную документацию Ember, состоящую из руководства, учебного пособия и документации по API редакции Octane. Используйте эти учебные материалы в качестве первого шага.
Первая часть учебника Super Rentals сейчас переведена на русский. Вот ссылки на часть 1.1 [12] и часть 1.2 [13].
Octane обеспечивает очень плавное погружение и позволяет учиться и развиваться в фреймворке по мере необходимости. Вы начинаете с шаблонов HTML, затем извлекаете фрагменты в шаблонные компоненты (template-only components) для ясности кода, затем добавляете аргументы для повторного использования компонентов, добавляете js-класс для обработки событий, добавляете сервис для общих функций, устанавливаете аддоны для более интересных вещей и т.д. Наконец, я могу учить людей той версии Ember, которая была у меня в голове. Проверьте новый учебник, чтобы увидеть разницу! ~ Годфри Чан (@chancancode [14])
Особенно в начале вы, возможно, захотите ознакомиться с основными концепциями Octane, и как они связаны с тем, что вы уже узнали о JavaScript! Прочитайте некоторые из этих избранных постов блога, чтобы подробнее узнать о принципах этой редакции Ember.
С самого начала Ember развивался вместе с языком JavaScript. Ember служил испытательным полигоном для таких функций, как классы и модули, и в течение многих лет отдавал больше, чем получал. В Octane мы исправляем ситуацию. Ember теперь становится таким же современным, как любая другая JavaScript-инфраструктура, максимально используя возможности языка, которые он помог сформировать. И его приверженность стабильности в эволюции означает, что эта тенденция будет продолжаться в течение многих лет. ~ Дэн Гебхардт (@dgeb [24])
Воспользуйтесь совместимостью Octane с классическим Ember и начните миграцию существующих приложений Ember и с помощью следующих полезных материалов:
Какой бы дорогой вы не пошли, вам не придется делать это в одиночку, поскольку члены сообщества щедро предоставили многочисленные кодовые патчи (codemods) [28], чтобы помочь всему сообществу эффективно мигрировать.
Неявный this или {{foo}} для {{this.foo}} [32]Если вам по пути нужна помощь, посетите чат и форумы сообщества Ember [35] (или русскоязычный телеграмм-канал [2]).
Когда мы начали работать над Ember в начале 2010-х годов, мы знали, что нам придется адаптироваться к изменениям экосистемы, но мы не могли предсказать, насколько значительными будут изменения в языке JavaScript и его распространении. Особенность Ember в том, что когда мы адаптируемся к таким вещам, как классы JavaScript или современный синтаксис компонентов, мы очень усердно работаем над миграцией существующих приложений. И дело не только в том, что вы можете использовать старые и новые функции одновременно. Старые классы синтаксиса и структуры свободно взаимодействуют с новыми классами синтаксиса и структур. Разработчики приложений Ember могут тратить больше времени на бизнес-функционал для своих пользователей и меньше времени на переписывание приложения, как это часто бывает в JavaScript сообществе. ~ Йехуда Кац (@wycats [3])
Хотите знать, кто использовал функции Ember Octane в продакшене?
В следующих нескольких выпусках мы будем уделять некоторое время рассмотрению проектов и команд, которые используют Ember Octane в своих приложениях.
Сегодня поговорим с компанией Outdoorsy [36], маркетплейсе, который связывает владельцев домов на колесах и автофургонов с туристами, поощряя их больше бывать на природе. Outdoorsy поддерживает три масштабных приложения Ember для своего главного веб-продукта.
Разработчики из Outdoorsy используют функции Octane в бою с сентября и, как сообщается, для них это приятный опыт. Жак Жубер (@jacojoubert [37]), фронт-энд инженер в Outdoorsy, говорит: «Octane позволил нам создать проверенные интерактивные приложения за очень короткое время. Используя Octane, мы воссоздали весь наш поиск [38] с нуля за пять недель. То, что раньше заняло бы на порядок больше времени".
Приложение Ember от Outdoorsy — прекрасная возможность показать лучшие стороны Ember Octane. Приложение пишется в классическом стиле Ember около 4 лет, и оно достаточно велико, чтобы над ним работала команда из 26 разработчиков (около половины из которых сосредоточены на пользовательском интерфейсе). Все приложение представляет собой монорепо из нескольких приложений и аддонов Ember и использует Ember Fastboot с регидратацией [39] для своих открытых страниц в целях SEO.
Как и при любом обновлении приложения такого размера, здесь было несколько болевых точек, но команда Outdoorsy воспользовалась возможностью собраться вместе во время внутрикомандного технического саммита (команда распределена, и многие работают удаленно), чтобы в течение недели сфокусироваться на обновлении.
К новому синтаксису Octane пришлось немного привыкать, особенно в том, как использовать отслеживаемые (tracked) свойства вместо вычисляемых (computed) свойств, но команде понравилось использование новой системы авто-отслеживания, а также компонентов на основе классов. Они планируют постепенное обновление всех своих компонентов с течением времени.
Почти вся новая работа, выполняемая над приложением, делается с использованием компонентов Glimmer и опирается на более ясные и естественные концепции Ember Octane (прим: glimmer-компоненты, отслеживаемые свойства, модификаторы).
Если перечислять заметные преимущества, которые команда Outdoorsy получила от Octane, — это упрощение ментальной модели работы с Ember за счет унификации синтаксиса и концепций, улучшенная читаемость кода и облегчение понимания, из какого контекста получается состояние. Отсутствие разночтения, в каком из файлов искать определение используемого свойства, безусловно благоприятно сказалось на производительности разработчиков.
Приятно слышать, что Octane действительно хорошо работает в продакшене в масштабах и с уровнем сложности компании Outdoorsy.
Мы знаем, что есть много других замечательных примеров использования Octane "в полях". Если вы хотите поделиться своим опытом, пожалуйста, свяжитесь с командой Ember Times.
Сохранение силы Ember зависит от энергии и преданности сообщества, и редакция Octane является отличным примером того, как сообщество может собраться вместе, согласовать план и довести все до ума. ~ Эдвард Фолкнер (@ef4 [40])
Выше мы упоминали о Руководстве по обновлению — Атлас Ember Octane [41]. Этот раздел содержит больше информации об этом ресурсе, который помогает разработчикам Ember перевести их классические приложений и аддоны Octane.
Так что же такое Атлас Ember?
Ember Atlas — это пока неофициальный ресурс для Ember, кураторами которого являются различные люди в Ember-сообществе. Сейчас он включает в себя лучшие практики, руководства по обновлению и другие темы. Атлас Ember создан, чтобы быть своего рода вики для Ember. Туда собирается различный контент, который пока не готов для официального руководства, или который не предполагается туда вносить (прим: например, по причине сложности или ограниченной целевой аудитории).
Не стесняйтесь добавить в закладки emberatlas.com [42], а для быстрого ознакомления рекомендуем прочитать раздел "Введение в Ember Atlas" [43].
С выходом [44] Ember Octane неудивительно, что это также горячая тема для EmberConf 2020 [45].
Если вы хотите послушать и поговорить с людьми об Octane, EmberConf в Портленде, США это то, что вам нужно! 16-18 марта будут полны потрясающих выступлений Годфри Чана (@chancancode [14]), Сучиты Доши (@ suchitadoshi1987 [46]), ДанМонро (@DanMonroe [47]) и многих других. (Европейская конференция EmberFest обычно проводится осенью и на ней также, наверняка, будут обсуждать Octane. Следите за этим твиттером [48], чтобы узнать где и когда)
Это также хорошее место, чтобы встретиться со своими друзьями из мира Ember и узнать о многих других темах. Для получения дополнительной информации посетите веб-сайт EmberConf [49] и присоединитесь к каналу #ember-conf [50] на Ember Discord .
У Ember есть стабильность и стойкость, и у него есть репутация, проверенная временем. Это делает его удобным для работы, и отличным выбором для компаний и команд, но это также означает, что наше время в центре хайпа уже прошло. Octane — это удивительное улучшение, а также отличная возможность привлечь людей, поймав следующую волну хайпа. Я надеюсь, что члены нашего сообщества воспользуются этой возможностью, чтобы распространить Ember еще больше к своим компаниям и проектам. ~ Лия Силбер (@wifelette)
На этой неделе мы хотели бы поблагодарить @mansona [51], @the-bionic [52], @bf4 [53], @mixonic [54], @rwjblue [55], @Turbo87 [56], @bobisjan [57], @dmzza [58], @efx [59] и @SYU15 [60] за их вклад в Ember и связанные с ним репозитории!
#embertimes
Хотите написать для Ember Times? Есть предложение для выпуска на следующей неделе? Присоединяйтесь к нам в #support-ember-times [61] в Ember Community Discord [62] или напишите в директ @embertimes в Твиттере [63].
Будьте в курсе того, что происходит в мире Ember, подписавшись на нашу еженедельную электронную рассылку [64]! Вы также можете найти наши сообщения [65] в блоге Ember.
На русском про Ember можно спрашивать в телеграмм канале ember_js [2]
Ну вот и закончился наш специальный выпуск, посвященный новой редакции Ember Octane!
Всего вам доброго,
Крис Нг, Алон Букай, Джессика Джордан, Анн-Грит ван Хервейнен, Исаак Ли, Джаред Галанис, Эми Лам и Команда обучения
Автор: chilicoder
Источник [66]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/javascript/342933
Ссылки в тексте:
[1] прошлый выпуск: https://habr.com/ru/post/482988/
[2] телеграмм-канале: https://t.me/ember_js
[3] @wycats: https://github.com/wycats
[4] издания: https://emberjs.com/editions/
[5] Requests For Comments: https://github.com/emberjs/rfcs
[6] Ember Guides: https://guides.emberjs.com/release/upgrading/current-edition/#toc_what-is-ember-octane
[7] ember-auto-import: https://github.com/ef4/ember-auto-import
[8] @jenweber: https://github.com/jenweber
[9] Официальная документация — Ember.js Guides: https://guides.emberjs.com/release/
[10] Официальный учебник для начинающих — создание приложения Super Rentals: https://guides.emberjs.com/release/tutorial/part-1/
[11] Официальная ссылка на API — Документация API Ember.js: https://api.emberjs.com/ember/release
[12] часть 1.1: https://habr.com/ru/post/482296/
[13] часть 1.2: https://habr.com/ru/post/482390/
[14] @chancancode: https://github.com/chancancode
[15] @pzuraq: https://github.com/pzuraq
[16] Часть 1: Нативные классы: https://blog.emberjs.com/2019/02/11/coming-soon-in-ember-octane-part-1.html
[17] Часть 2: Синтаксис с угловыми скобками (angle brackets) и именованные (named) аргументы: https://blog.emberjs.com/2019/02/19/coming-soon-in-ember-octane-part-2.html
[18] Часть 3: Отслеживаемые свойства: https://blog.emberjs.com/2019/02/26/coming-soon-in-ember-octane-part-3.html
[19] Часть 4: Модификаторы: https://blog.emberjs.com/2019/03/06/coming-soon-in-ember-octane-part-4.html
[20] Часть 5: Glimmer-компоненты: https://blog.emberjs.com/2019/03/14/coming-soon-in-ember-octane-part-5.html
[21] Джен Вебер (@jenweber): Наиболее распространенные ошибки при использовании Octane и как их избежать: https://medium.com/ember-ish/the-most-common-ember-js-octane-mistakes-and-how-to-avoid-them-c6420e1b0423
[22] Рикардо Мендес (@locks) Как Octane приносит ясность в шаблоны: https://simplabs.com/blog/2019/12/20/clarity-in-templates/
[23] Frontend Masters (платная подписка 39$ в месяц): Курс по основам Ember Octane от Mike North (@ mike-north): https://frontendmasters.com/courses/ember-octane/
[24] @dgeb: https://github.com/dgeb
[25] Как переписать приложение используя Ember Octane от Айзека Ли (@ ijlee2): https://crunchingnumbers.live/2019/12/23/rewriting-apps-in-ember-octane/
[26] Ember Octane vs. Classic Ember Шпаргалка (cheatsheet): https://ember-learn.github.io/ember-octane-vs-classic-cheat-sheet/
[27] Пошаговое руководство по миграции в Атласе по Ember: https://www.notion.so/Atlas-Recommended-Migration-Order-a22f948a7cce4e01896d674f727bee74
[28] многочисленные кодовые патчи (codemods): https://github.com/ember-codemods
[29] Патч для угловых скобок: https://github.com/ember-codemods/ember-angle-brackets-codemod
[30] Патч для отслеживаемых свойств: https://github.com/ember-codemods/ember-tracked-properties-codemod
[31] Патч для нативных классов: https://github.com/ember-codemods/ember-native-class-codemod
[32] Неявный this или {{foo}} для {{this.foo}}: https://github.com/ember-codemods/ember-no-implicit-this-codemod
[33] Патч ES5 Getter: https://github.com/ember-codemods/es5-getter-ember-codemod
[34] Перенос шаблонов в папки с js-классами: https://github.com/ember-codemods/ember-component-template-colocation-migrator
[35] чат и форумы сообщества Ember: https://emberjs.com/community/
[36] Outdoorsy: https://www.outdoorsy.com/
[37] @jacojoubert: https://github.com/jacojoubert
[38] поиск: https://www.outdoorsy.com/rv-search
[39] регидратацией: https://www.youtube.com/watch?v=s28a3U3ce2c&t=1087s
[40] @ef4: https://github.com/ef4
[41] Атлас Ember Octane: https://www.notion.so/Ember-Octane-b8ad64b7adf74218942fc69ead7b6892
[42] emberatlas.com: http://emberatlas.com/
[43] "Введение в Ember Atlas": https://www.notion.so/Introduction-d11ec02706d74eab960b3e2b11494bc7
[44] выходом: https://blog.emberjs.com/2019/12/20/octane-is-here.html
[45] EmberConf 2020: https://emberconf.com/#/speakers
[46] @ suchitadoshi1987: https://github.com/suchitadoshi1987
[47] @DanMonroe: https://github.com/DanMonroe
[48] этим твиттером: https://twitter.com/EmberFest/status/1212694841999724544
[49] EmberConf: https://emberconf.com/
[50] #ember-conf: https://discordapp.com/channels/480462759797063690/480502413917421570
[51] @mansona: https://github.com/mansona
[52] @the-bionic: https://github.com/the-bionic
[53] @bf4: https://github.com/bf4
[54] @mixonic: https://github.com/mixonic
[55] @rwjblue: https://github.com/rwjblue
[56] @Turbo87: https://github.com/Turbo87
[57] @bobisjan: https://github.com/bobisjan
[58] @dmzza: https://github.com/dmzza
[59] @efx: https://github.com/efx
[60] @SYU15: https://github.com/SYU15
[61] #support-ember-times: https://discordapp.com/channels/480462759797063690/485450546887786506
[62] Ember Community Discord: https://discordapp.com/invite/zT3asNS
[63] @embertimes в Твиттере: https://twitter.com/embertimes
[64] еженедельную электронную рассылку: https://the-emberjs-times.ongoodbits.com/
[65] наши сообщения: https://emberjs.com/blog/tags/newsletter.html
[66] Источник: https://habr.com/ru/post/483630/?utm_source=habrahabr&utm_medium=rss&utm_campaign=483630
Нажмите здесь для печати.