Всем нам время от времени становится интересно, не устарела ли та или иная технология, и что сейчас в тренде. Особенно это актуально в мире frontend.
Сегодня у нас появились ответы на некоторые из этих вопросов. Сегодня на сайте https://stateofjs.com опубликован новый отчет с результатами опроса двадцати тысяч разработчиков. Лучше всего сразу смотреть оригинал, но если времени мало, то в этой статье будут освещены ключевые моменты.
Фронтенд-фреймворки
Красивую подробную диаграмму можно посмотреть здесь, а если кратко по местам, то десятка лидеров выглядит так:
тыс чел | Фреймворк |
---|---|
14 | React |
9.5 | Без фреймворка |
4.7 | Angular 1 |
4.6 | VueJs |
4.4 | Angular 2 |
1.7 | Backbone |
1.2 | Polymer |
1.1 | Ember |
0.3 | Aurelia |
(Кто-нибудь знает, как убрать width:100% для таблицы на Хабре?)
В левой колонке — количество людей, которые использовали фреймворк и остались довольны.
Как можно видеть, React по прежнему абсолютный лидер. Vue.js, о котором столько говорили и писали, хоть и нарастил свою долю за год, но не более того. Убийцей Реакта так и не стал. Тем не менее, как можно видеть из диаграммы по ссылке, интерес к vue попрежнему большой, много людей планируют его попробовать.
Разновидности языка
тыс чел | Язык |
---|---|
21 | ES6 |
13 | Простой js (ES5) |
8 | Typescript |
2.4 | Flow |
1.2 | Elm |
0.5 | Clojurescript |
0.1 | Reason |
В общем, пока что стоит писать на js с классами (ES6) или, если вы любите строгую типизацию, то typescript.
Имхо flow уже не получит такого распространения, как typescript, потому что facebook похоже начал активно развивать Reason. Который, правда, тоже еще далек от распространенности.
Управление состоянием
Тут какая-то жесть. В одну кучу смешали все технологии. Как можно сравнивать Rest API, redux и MySQL? Что больше, метр или килограм?
Тем не менее, посмотреть отчет по state management стоит, потому что какие-то выводы можно сделать.
Например, что redux в 10 раз обгоняет mobx и другие аналоги, т.е. он похоже стал абсолютным лидером в этой области, стандартом де факто. А также, что GraphQL, несмотря на весь хайп, пока что не так распространен, как RestAPI.
Backend js-фреймворки
Из этого отчета ясно, что express — абсолютный лидер, остальные отстают на порядок.
CSS
Хотя опрос называется "The State of JavaScript", все мы понимаем, что без знания css ничего не получится. Вот технологии, связанные с css:
тыс чел | Технология |
---|---|
18.0 | Sass/Scss |
17.0 | Просто CSS |
14.0 | Bootstrap |
7.4 | Less |
6.5 | CSS-in-JS |
4.3 | Foundation |
2.4 | Stylus |
Похоже, мы дожили до того момента, когда голый css проигрывает расширенным вариантам (sass/scss/less)
Build tools
Тут без сюрпризов. В топе Npm и webpack. Ну еще gulp, но судя по диаграмме многие от него будут отказываться.
Mobile tools
Судя по диаграмме, нативные приложения по прежнему в топе:
тыс чел | Технология |
---|---|
7.9 | Нативные приложения |
4.9 | Electron |
4.8 | React Native |
3.4 | Phone Gap/Cordova |
2.5 | Ionic |
0.5 | NativeScript |
Прочее
Есть также отчеты "прочее", которые авторы не смогли причислить ни к какой категории, поэтому они все свалены на одной странице.
Из любопытного:
1) yarn-ом пользуются больше, чем npm.
2) vscode минимум в два раза популярнее, чем остальные редакторы, включая webstorm.
Также в отчете есть распределения зарплат по технологиям, распространение технологий по странам и интерактивная диаграмма о связи технологий друг с другом (например, сколько раз используется react+redux)