Как стать автором
Обновить
0

Ember.js *

JavaScript-фреймворк для веб-приложений

Сначала показывать
Порог рейтинга
Уровень сложности

Причины говнокода во фронтенде. Мнение мимокрокодила

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров37K

Мне не раз попадались такие проекты, от кода которых берет оторопь. Такое чувство, что сами авторы не смогут объяснить - почему у них все выглядит именно так. В этот момент у меня возникает вопрос: как так получилось? Если вас он тоже волнует, то могу пожелать лишь приятного чтения.

Читать
Всего голосов 68: ↑56 и ↓12+53
Комментарии118

Новости

Как работает Автотрекинг

Время на прочтение19 мин
Количество просмотров1.8K

Это пост - третий из серии постов об автотрекинге - новой системе реактивности Ember.js. В этой серии я также обсуждаю общие принципы реактивности и то, как они проявляются в мире Javascript. (Прим пер.: ссылки на переводы предыдущих двух: 1. Что такое реактивность? 2.Что делает реактивную систему хорошей? )

В прошлом посте мы обсудили несколько моделей реактивности вывели несколько принципов для дизайна хорошей реактивной системы. Этот пост посвящен тому, как устроен автотрекинг, и как он удовлетворяет вышеуказанным принципам.

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Почему в Ember не нужны React-хуки

Время на прочтение9 мин
Количество просмотров2.4K

От переводчика: Этот пост является продолжением поста о реализация паттернов React-компонентов в Ember.js. Автор рассматривает концепцию React-хуков для абстракции логики состояния (stateful logic) и сравнивает ее реализацию с реализацией в Ember. И хотя в экосистеме React эта концепция признана весьма полезной, в Ember.js попытки предложить похожую не нашли особенного отклика. Причина этому - наличие в фреймворке достаточных инструментов для решения этой задачи без использования хуков. О каких инструментах идет речь, вы узнаете из этого материала.

Читать далее
Рейтинг0
Комментарии2

Как выглядит реализация паттернов React-компонентов в Ember.js

Время на прочтение10 мин
Количество просмотров2.1K

От переводчика: Я прототипирую интерфейсы на Ember.js. И всегда испытываю трудности, когда нужно переключиться на React и написать что-нибудь используя этот de facto выбор по-умолчанию в современной фронт-энд разработке. Каждый раз сталкиваешься с трудностями на ровном месте и вынужден думать о том, о чем привык не думать, писать велосипеды. Мне всегда хотелось это как-то выразить и на днях я нашел статью, где автор очень наглядно показывает разницу на кодовых примерах. Представляю вашему вниманию ее перевод.

Недавно я наткнулся на пост в блоге, в котором обсуждаются несколько паттернов для React-компонентов. В этом посте я хочу изучить, можно ли и как эти шаблоны компонентов применять к Ember, а также как Ember сравнивается с React при использовании этих шаблонов.

Хотя я никоим образом не являюсь экспертом по React, всегда интересно наблюдать, как другие js-сообщества решают сходные с нашими проблемы при реализации SPA-приложений. Я не могу авторитетно говорить о качестве реализаций обсуждаемых шаблонов компонентов, но, судя по тому, что я видел в открытом доступе и читал о паттернах компонентов в React, похоже, эти подходы достаточно активно используются разработчиками. А поскольку проблемы, с которыми мы сталкиваемся при разработке клиентских приложений, одинаковы для разных экосистем, идеи, лежащие в их основе, интересны разработчикам, независимо от их вероисповедания выбора фреймворка.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Истории

Как мы начали социальный Open Source проект Brain-Up по созданию платформы развития слухового восприятия

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров3.4K

В сентябре 2019 года я стартовала социальный Open Source проект Brain-Up на Kotlin и Ember. Это разработка веб-приложения, которое включает в себя серии интерактивных аудиоупражнений для тренировки способности слышать и понимать речь лучше. Я работаю Java-разработчиком с 2013 и в компании EPAM с 2017 года. Однажды столкнувшись с проблемой восприятия речи у своего ребенка, я поняла, что могу попробовать начать разработку такого продукта, который мог бы помочь людям развивать способность восприятия речи не выходя из дома, за компьютером, через веб-сайт, не прибегая к ежедневной помощи близких, специалистов. Первая версия продукта уже доступна для занятий. В этой статье я расскажу о нашем проекте, какие задачи и как были решены, наши планы и как можно присоединиться к проекту.

«Лучше самая малая помощь, чем самое большое сочувствие»

Владислав Лоранц

Читать далее
Всего голосов 4: ↑3 и ↓1+7
Комментарии3

Малоизвестные, но популярные JS-фреймворки для фронтенда

Время на прочтение5 мин
Количество просмотров14K
Не так давно мы, создавая динамические веб-приложения, использовали для работы с DOM чистый JavaScript или jQuery. С тех пор появилось много замечательных JavaScript-фреймворков и библиотек. Они помогают разрабатывать проекты, которые, по привлекательности и удобству, превосходят то, что было раньше.



Автор статьи, перевод которой мы сегодня публикуем, хочет рассказать о нескольких мощных, но малоизвестных клиентских фреймворках и библиотеках, основанных на JavaScript. Конечно, «большая тройка», в лице Angular, React и Vue, никуда не делась, но в мире веб-разработки есть и другие инструменты, достойные внимания. Такие, например, как Svelte, Preact и Riot. Вопрос выбора подходящего средства зависит от многих факторов. Среди них — знания разработчика, особенности проекта, ситуация на рынке. Поэтому давайте рассмотрим малоизвестные фреймворки, расширив тем самым свободу выбора тех, кто ищет подходящий инструмент для своего очередного проекта.
Читать дальше →
Всего голосов 23: ↑18 и ↓5+28
Комментарии30

The Ember Times — Выпуск 136

Время на прочтение5 мин
Количество просмотров579


ഹലോ Эмберисты!


Присылайте видео для вступительного слова на EmberConf, вышла новая версия Ember 3.16, Сапер встречает Ember Octane, прочитайте рассказ о первом опубликованном аддоне, пройдите опрос сообщества Ember 2020, и узнайте, как пересылать модификаторы элементов за <10 минут !


От переводчика: Все ссылки без пометки указывают на англоязычные ресурсы. На русском вопросы можно задать в вашем любимом телеграмм-канале

Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Что делает реактивную систему хорошей?

Время на прочтение14 мин
Количество просмотров6.9K

Этот пост является вторым в серии статей об авто-трекинге — новой системе реактивности в Ember.js. Я также обсуждаю концепцию реактивности в целом, и как она проявляется в JavaScript.


От переводчика: Крис Гарретт — работает в компании LinkedIn и является одним из core-контрибьюторов js-фреймворка Ember. Он принимал активное участие в создании нового издания фреймворка — Ember Octane. Одним из краеугольных камней этой редакции является новая система реактивности на основе автоматического отслеживания (autotracking). Несмотря на то, что его серия написана для Ember-разработчиков в ней затрагиваются концепции, которые полезно знать всем веб-программистам.
Читать дальше →
Всего голосов 7: ↑7 и ↓0+7
Комментарии1

The Ember Times — Выпуск 135

Время на прочтение5 мин
Количество просмотров1K


С Днем Святого Валентина, Эмберисты!


Узнайте о поддержке нативных декораторов от EmberMap, проверьте RFC (Request for comments) для спларгументов (splarguments), следите за серией постов о системах реактивности, слушайте подкаст JSParty с Джен и Крисом и читайте о трех причинах для перехода к синтаксису угловых скобок (angle brackets) в Ember Octane !


От переводчика: Все ссылки без пометки указывают на англоязычные ресурсы. На русском вопросы можно задать в нашем дружном телеграмм-канале

Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Что такое реактивность?

Время на прочтение9 мин
Количество просмотров14K

В Ember Octane появилось большое количество новых функций, но ни одна из них не является для меня более захватывающей, чем автоматическое отслеживание (autotracking). Автотрекинг — это новая система реактивности Ember, которая позволяет Ember узнавать, когда значения состояние (например, свойства помеченное @tracked) изменилось. Это было масштабное обновление под капотом, включающее в себя полное переписывание некоторых из самых старых абстракций Ember поверх нового ядра.


От переводчика: Крис Гарретт — работает в компании LinkedIn и является одним из core-контрибьюторов js-фреймворка Ember. Он принимал активное участие в создании нового издания фреймворка — Ember Octane. Несмотря на то, что его серия написана для Ember-разработчиков в ней затрагиваются концепции, которые полезно знать всем веб-программистам.
Читать дальше →
Всего голосов 13: ↑11 и ↓2+14
Комментарии6

The Ember Times — Выпуск 134

Время на прочтение4 мин
Количество просмотров1.4K


Привет, Эмберисты!


На этой неделе: Полифилы для пакетов ember-data для старых версий Ember, узнайте как Figma в связке со Storybook облегчает жизнь разработчика, QUnit DOM объявляет о выпуске v1.0, а также выход ember-changeset 3.0.0 !


От переводчика: Все ссылки без пометки указывают на англоязычные ресурсы. На русском вопросы можно задать в нашем душевном телеграмм-канале

Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии0

The Ember Times — Выпуск 133

Время на прочтение5 мин
Количество просмотров576

Пис вам️, Эмберисты!


На этой неделе: узнайте об RFC (Request For Comments) по улучшению API-интерфейса для реестра Ember ️, прочитайте отзыв об использовании Ember Octane компанией FlashRecruit, внесите свой вклад в OSS на EmberConf и познакомьтесь с Ilya Radchenko (@knownasilya) и Michal Bryxí (@MichalBryxi) — двумя разработчиками, которые регулярно пишут короткие сообщения Ember ️!


От переводчика: Все ссылки без пометки указывают на англоязычные ресурсы. На русском вопросы можно задать в нашем цветущем телеграмм-канале

Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Туториал из руководства по Ember.js. Приложение Super Rentals. Часть 1.2

Время на прочтение21 мин
Количество просмотров2.4K

Продолжаем публиковать перевод туториала из официального руководства Ember.js. Туториал состоит из двух частей и это вторая половина первой части туториала. Напоминаем, что первую половину вы можете прочитать по этой ссылке


Список тем, которые покрывает туториал внушает:


  • Использование Ember CLI
  • Навигация по структуре файлов и папок приложения Ember
  • Создание и связь между страницами
  • Шаблоны (templates) и компоненты
  • Автоматизированное тестирование
  • Работа с данными сервера
  • Динамические сегменты в маршрутах
  • Сервисы в Ember
  • Библиотека Ember Data
  • Адаптеры и сериализаторы
  • Паттерн компонента-провайдера

Садитесь поудобнее, открывайте терминалы, находите проект на своем компьютере и давайте двигаться дальше. И помните, что если у вас возникнут трудности, всегда можно попросить помощи в Discord канале сообщества (на русском канал #lang-russian), а также в русскоязычном телеграмм канале ember_js

Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Ближайшие события

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

Ember.js: (снова) время попробовать

Время на прочтение8 мин
Количество просмотров17K

Я написал эту статью по мотивам выступления, которое я делал на встрече Berlin.js. В последнее время выходит мало русскоязычных материалов об этом довольно популярном и стабильном фреймворке и я решил немного исправить эту ситуацию.


Вы учите Ember.js один раз, а потом применяете эти знания на всех Ember.js проектах. Этот тезис я попытаюсь раскрыть под катом.

Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии16

Ember.js: отличный фреймворк для веб-приложений

Время на прочтение22 мин
Количество просмотров30K
Ember.js — это JavaScript-фреймворк для разработки клиентской части веб-приложений, амбициозный проект, который в последнее время привлекает к себе много внимания. Сегодня мы хотим рассказать о некоторых ключевых концепциях, лежащих в основе Ember.js, продемонстрировав их в ходе создания простого приложения.



Это будет программа Dice Roller, которая позволяет «бросать» игральные кости, предварительно задавая их параметры, и просматривать историю предыдущих «бросков». Её код можно найти на Github.
Читать дальше →
Всего голосов 17: ↑15 и ↓2+13
Комментарии20

Ember.js — прощай MVC (часть 1)

Время на прочтение6 мин
Количество просмотров27K
Предлагаю вашему вниманию перевод статьи Ember.js  —  Goodbye MVC (Part 1).

На конференции EmberConf 2015 Йегуда Кац и Том Дейл сообщили о скором появлении некоторых изменений в Ember 2. В частности, наибольшее внимание привлекли маршрутизируемые компоненты. Они позволяют признать контроллеры устаревшими и убрать их. Конечно, это встревожило многих пользователей Ember, так как Ember и Sproutcore всегда были клиентскими фреймворками MVC.
Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии22

Философия Ember.js

Время на прочтение4 мин
Количество просмотров54K
В последнее время в вебе идет тенденция к «утончению» сервера и «утолщению» клиента. С каждым днем вакансий Full-stack разработчиков становится все больше, а чистого бэкенда все меньше. Последние 2 года я работаю разработчиком Ruby on Rails и в скором будущем без работы остаться не хотелось бы. Поэтому я начал рассматривать варианты изучения клиентского фреймворка.

Вариантов было несколько:

  • Meteor
  • Angular
  • Ember

Но остаться должен только один. Meteor предлагает интересную концепцию – общий код клиента и сервера, но он пока сыроват и мне не хотелось оставлять прекрасный язык Ruby. Поэтому Метеор отпал. Так как Ember был похож на Rails (магия, convention over configuration), то был выбран именно он. Помимо этого, очень симпатично выглядел шаблонизатор Handlebars по сравнению с директивами Angular.

Выбор сделан. Вот тут и начались проблемы.
Читать дальше →
Всего голосов 29: ↑28 и ↓1+27
Комментарии30

Анатомия Ember.js (часть первая, теоретическая)

Время на прочтение5 мин
Количество просмотров32K
image Ember.js сложный в обучении. Хотя даже не так. Концепты Ember.js сложны в освоении и понимании. Мне кажется, что любой курс обучения Ember.js должен начинаться с этих слов.

Я разработчик, работающий с Ruby on Rails (до этого я программировал в .NET и Python). Для меня было довольно проблематично понять магию, заставляющую Ember.js работать. Иногда я общаюсь с другими начинающими разработчиками, вставшими (или пытающимися встать) на путь Ember.js — все их проблемы начинаются из-за того, что они не понимают, как устроен данный фреймворк.

Да, с одной стороны есть официальная документация в которой детально описаны все аспекты данного фреймворка. Но ей не хватает концепции; для начинающего разработчика это просто осколки информации разбросанные случайным способом. Из документации, например, можно узнать что у нас есть в арсенале контроллеры, модели и виды (controller, model, view). Но для того что-бы узнать за что они отвечают и как работают начинающему разработчику предлагают сначала наступить на грабли пару десятков раз. Плюс в нагрузку к контроллерам, моделям и видам Ember.js нам дает целый взвод разношерстых объектов типа компонентов, шаблонов, маршрутизатора и путей (component, template, router, route).
Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии20

Начинаем работать с Ember.js

Время на прочтение6 мин
Количество просмотров57K


В наши дни сложные Javascript-приложения можно увидеть повсюду. Со временем они становятся все сложнее и уже неприемлемо просто писать цепочку callback-функций на jQuery. Javascript-программисты постепенно узнают то, что обычные разработчики знали уже несколько десятилетий. Организация и эффективность может сыграть важную роль при разработке. Таким образом, такие MVC-фреймворки на Javascript, как Backbone, Knockout и Ember появились для того, чтобы заполнить пустоту между начинающими, средними и опытными разработчиками. Они предлагают разные возможности и функционал, который подойдет разным людям, в зависимости от их потребностей.
Читать дальше →
Всего голосов 50: ↑46 и ↓4+42
Комментарии33