JavaScript

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

Чтобы разобраться в запутанном клубке из React, Angular и Vue и понять, что полезнее изучать в 2019 году, мы изучим количество объявлений о вакансиях, статистику разработчиков, количество скачиваний и другие факторы.

Методология:

Наша цель — провести беспристрастное исследование по следующим критериям:

Спрос на специалистов— каковы реальный спрос и вакансии по каждой из 3 библиотек и фреймворков.

Использование разработчиками— что из этого списка трех чаще используют при разработке?

Мнение разработчиков—желательно, чтобы вам нравился инструмент, который вы используете. Как программисты относятся к каждой из этих трех?

В статье будут разделы по каждой из представленных выше тем. В идеале, мы хотим выбрать инструмент, пользующуюся наибольшим спросом, что даст нам больше шансов найти работу. Но также не стоит забывать, что мы должны получать удовольствие от работы с этим инструментом. Ну и наконец, нужно выбрать что-то с перспективным будущим и растущим количеством пользователей. Давайте начинать!

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

Все данные и цифры, представленные ниже, актуальны на момент написания статьи ( 10 декабря 2018 года).

Спрос на специалистов

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

Сколько было найдено вакансий для разработчиков React, Angular и Vue?

Те же самые данные, представленные по-другому:

И точные цифры:

Я подбирал данные по следующим критериям:

LinkedIn — крупнейший сайт по трудоустройству для специалистов технического профиля, он позволяет искать объявления о работе по каждой библиотеке по всему миру.

Indeed, SimplyHired и Dice — 3 крупных портала по трудоустройству в США, поэтому поиск здесь территориально ограничен. Но даже если вы не живете в США, полезно знать, какова там ситуация с трудоустройством технических специалистов.

AngelList, наверное, лучший сайт для стартапов. Мы сможем понять, что чаще используют стартапы и другие молодые и современные компании.

Hired — платформа, которая позволяет компаниям искать талантливых разработчиков. Интересно взглянуть с их стороны, так как обычно там публикуются вакансии только крупных компаний.

Remote — раздел, который я добавил для интереса. Я включил сюда вакансии удалённой работы с indeed.com и remote.co, чтобы измерить, сколько вакансий доступно для каждой из 3 библиотек.

О чем говорят данные:

Лидируют React и Angular. Ничего удивительного в отношении React, так как последние несколько лет она является наиболее популярной front-end библиотекой (об этом чуть позже). Но удивительно видеть в лидерах Angular, хотя, к примеру stateofJS спрогнозировал её упадок в 2019 году. Также неожиданно было увидеть столь низкий спрос на Vue.js, несмотря на все положительные отзывы, которые она получила в опросах разработчиков на stateofJS.

Мои 5 копеек:

Если вы хотите иметь наиболее широкий выбор вакансий, изучайте React и Angular.


Использование разработчиками

Давайте посмотрим, сколько разработчиков используют React, Angular и Vue.

Вот суммарное количество скачиваний:

И статистика GitHub:

Диаграмма сравнения количества звёзд на GitHub:

Но если мы посмотрим на Топ проектов с открытым кодом, мы обнаружим там Angular и React (вроде того), но не Vue:

А вот популярность поисковых запросов Google (эти данные можно отнести и к спросу на специалистов):

И ещё один график по немного измененным запросам:

И ещё добавим “Angular”, так как AngularJS — это старая версия Angular (но не забывайте, что здесь включены все запросы, связанные с “Angular”, необязательно из технической сферы):

О чем говорят данные:

В целом, глядя на количество скачиваний и активность на GitHub, мы видим положительный рост у всех инструментов. Без сомнений, разработчики пользуются ими, но мы видим огромную разницу между количеством звезд на GitHub и количеством реальных пользователей Vue.js. Опять же, Vue пока не может сравниться с Angular и React. Однако похоже, что рост популярности Angular и React начинает понемногу замедляться.

Мои 5 копеек:

Наибольшую активность показывают разработчики React, о чем говорит количество реальных пользователей. На втором месте идет Angular, и вновь оказывается, что Vue используют не так часто, как многие думают (хотя заметна тенденция более частого использования в Китае). Но замедление роста популярности Angular и React может означать, что некоторые пользователи переходят на Vue. Разработчики смогут найти больше руководств, статей и прочей активности по React, нежели по Angular и Vue. Если это для вас важно, выбирайте React.

Примечание: К следующему году намечается интересная тенденция: китайские компании-гиганты вроде Alibaba, Baidu, Tencent, даже Xiaomi и DJI чаще используют Vue, а не React и Angular, созданные Facebook и Google. Я думаю, что китайский рынок будет расти особенно быстро, потому что Vue — независимая библиотека с открытым исходным кодом, никак не привязанная с западным техническим гигантам (нет данных, подтверждающих это).


Мнение разработчиков

Вы должны любить инструмент, с которым вы работаете. Деньги, конечно, важны, но есть и другие важные факторы. В идеале, вы хотите работать с тем, что вам нравится. Снова обратимся к цифрам.

Из опроса StackOverflow (возможно самого лучшего опроса об отношении разработчиков к трендам): востребованные, ужасные и любимые библиотеки, фреймворки и инструменты, по мнению разработчиков:

Самые востребованные библиотеки, фреймворки и инструменты

Самые ужасные библиотеки, фреймворки и инструменты:

Самые любимые библиотеки, фреймворки и инструменты:

Данные из опроса stateofJS. К сожалению, опрос больше ориентирован на опытных пользователей и сообщества React и Vue, поэтому данные немного субъективны:

React:

Angular:

Vue:

О чем говорят данные:

Ничего нового мы не увидели. Пользователи React любят эту библиотеку, да и в целом разработчикам она нравится. React опережает Angular по каждому пункту, но ненамного. Хотя опрос stateofJS показал, что многие недовольны Angular, а в StackOverFlow упомянули, что пользователям она нравится меньше, чем React, в предыдущем разделе мы видели, что спрос на Angular весьма высок. Показатели Vue снова весьма скромны. Хоть мы и видим большую любовь пользователей Vue к этой библиотеке, она всё ещё находится в тени… Но на неё стоит обратить внимание.

Мои 5 копеек:

Если вам хочется получать удовольствие от программирования, самым подходящим выбором будет React или Vue.


Но вот, что самое важное

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


Вывод🏆

Важно сформировать своё личное мнение по этой теме… Ладно, только потому что вы вежливо попросили, я считаю, что лучшим выбором в 2019 году, основываясь на данных, представленных выше, будет React. Вам нужно выбрать инструмент, который используется в компаниях. Также он должен набирать популярность, а никак не наоборот. Сообщество пользователей должно быть широким, желательно наличие большого количества руководств и ресурсов по этому инструменту. А его использование должно приносить вам наслаждение. React отвечает всем этим требованиям. Это не означает, что вам следует забыть об Angular и Vue. Это тоже отличные библиотеки и фреймворки, да и React не будет популярен вечно. Я говорю только о том, что если вы ограничены во времени и кричите: “СКАЖИ! ПРОСТО СКАЖИ, ЧТО ИЗУЧАТЬ И ОСВАИВАТЬ!”, я посоветую React.

Перевод статьи Andrei Neagoie: Tech Trends Showdown🏆: React vs Angular vs Vue