Четыре года назад я выбрал фреймворк JavaScript и чувствую себя комфортно

Вы уже слышали о недавно выпущенном новом фреймворке / библиотеке shine JavaScript? В экосистеме JS они растут как грибы, так что вы можете всегда иметь `режим погони за разработчиками`. Узнавать что-то новое - это по определению хорошо, не поймите меня неправильно. Тем не менее, если вы посмотрите на Усталость от JavaScript, это довольно сложная ситуация.

В 2013 году, когда фреймворки одностраничных приложений были незрелыми, было немного доступных вариантов. Angular.js, Backbone.js, Batman.js, Ember.js и многие другие.

Что случилось с тех пор? Итак, Angular.js (линия 1.x) был полностью переписан, так как его оригинальная архитектура была нарушена дизайном - планы были объявлены в 2014 году, и только два года спустя, в 2016 году, он был доставлен :-) . Что касается Angular.js (1.x и 2.x) - все еще продолжается, даже если это не та технология, которую крутые дети используют в те дни. У Backbone.js все еще есть небольшая группа активных пользователей, но сегодня большинство разработчиков, которым нравится этот стиль, выбирают React.js или Vue.js. Batman.js был удален Shopify (сопровождающий) 18 месяцев спустя (в конце 2014 года). Ember.js также имеет крупное обновление, выпущенное в 2015 году - ключевые идеи остались прежними, а структура все еще в игре.

Четыре года назад я не знал, что ждет в будущем, никогда не знаешь. Также хорошо отметить, что в те дни никто не знал, как создавать клиентские приложения на JavaScript. Сейчас, в 2017 году, мы находимся в гораздо лучшем положении. К сожалению, мы еще не пришли.

Глядя на архитектуру, идеи и выдающихся людей, я сделал ставку на Ember.js. У него есть взлеты и падения, поскольку в технологиях все меняется. В конце концов, я согласился с принятым решением. И это подводит меня к некоторым заметкам на будущее:

Решающими факторами для оценки технологий на раннем этапе являются основные ценности и философия людей, стоящих за ними.

Даже если мы не можем предсказать будущее, знание людей, стоящих за проектом, помогает спрогнозировать направление, в котором будет развиваться решение. Создатели обычно имеют опыт работы с открытым исходным кодом; они писали статьи; сделали презентации - чувствуете ли вы, как они решают проблемы (и определяют их)? Еще один фактор, который следует принимать во внимание, - это контекст: знакомы ли они со средой продуктовых компаний или, может быть, они сталкиваются с проблемами, возникающими в компании, занимающейся разработкой программного обеспечения. Они делают маленькие или огромные проекты?

Ember.js - не панацея, отлично работает там, где хорошо согласуется с контекстом проекта. Когда я оглядываюсь на то, что происходит в экосистеме JavaScript и как развивается Ember.js, мне кажется, что Ember.js был правильным выбором. И здесь я хочу поблагодарить всех, кто делает это возможным - отличная работа!

Мне интересно узнать о ваших идеях и передовом опыте. Что вы учитываете при принятии технологических решений?