От автора: отчет «Состояние JS» за 2018 год — какие фреймворки будут определяющими в 2019 году? В этом посте мы рассмотрим и проанализируем отчет о состоянии JavaScript в 2018 году, чтобы пролить свет на то, какие JavaScript фреймворки будут в центре внимания в 2019 году.
StateOfJS
По мере того, как 2018 год подходит к концу, давайте уделим некоторое время, чтобы взглянуть на удивительный путь, который прошел JavaScript, о чем свидетельствуют мнения более 20 000 разработчиков со всего мира, использующих идеи stateofjs и подкрепляющих его более глубоким обзором из Отчета о состоянии экосистемы разработчиков Jetbrains.
TL; DR: в этой статье мы возьмем для примера по 3 наиболее востребованных javascript-фреймворка для веб-интерфейса, уровня данных и серверной веб-разработки и рассмотрим их на основе визуализации из StateOfJS.
Что такое StateOfJS
State of JS — это, в основном, ежегодный обзор всего JavaScript, где собраны и визуализированы мнения разработчиков, которые принимают участие в опросе, чтобы показать идеи, которые отображают состояние JavaScript в этом году.
Данный обзор охватывает передовые фреймворки, базы данных, управление состоянием, взаимосвязи между платформами, простоту использования, языки, которые компилируются в JavaScript, мобильные платформы, инструменты сборки, инструменты тестирования JavaScript и многое другое. Это очень всесторонний опрос, который был впервые проведен в 2016 году Сашей Грайфом и несколькими другими людьми, и теперь в последнем его выпуске содержится более 20 000 отзывов разработчиков.
Почему State?
Да, State of JS на самом деле является самым первым опросом разработчиков только по JavaScript, который пользуется всеобщим уважением. Существуют и другие очень популярные опросы, такие как «Опрос разработчиков полного стека» с участием более 100 000 респондентов и даже «Отчет о состоянии экосистемы разработки Jetbrain» с более чем 6000 респондентами, однако сегодня мы поговорим о состоянии js.
Кроме того, вы больше ни на одной платформе не увидите такой красивой анимации, как на stateofjs.
Часть 1: Основы Front-end веб-разработки
Это эпоха компонентов, и данное утверждение касается не только Front-end. Мы рассмотрим наиболее востребованные среды разработки интерфейсов в порядке наибольшей значимости, определяемой такими факторами, как удовлетворенность пользователей, проявляемый интерес, простота использования и охват. Заглядывая вперед, похоже, это только начало.
С появлением таких инструментов, как Bit, которые позволяют легко обмениваться и повторно использовать компоненты, чтобы быстрее создавать новые приложения, объединять их и синхронизировать между проектами, за фреймворками на основе компонентов, безусловно, будущее.
1. React
React с более чем 110 000 звездами на github — это декларативная, эффективная и гибкая библиотека JavaScript для создания пользовательских интерфейсов от команды Facebook*. Создавать интерактивные пользовательские интерфейсы с его помощью действительно очень просто, фреймворк поддерживает создание ориентированных на компоненты приложений. Еще одним важным фактором является обратная совместимость. Вы можете легко заметить на приведенной выше диаграмме, что за последние несколько лет все больше людей узнают о React, и это отличная точка для начала вашего пути развития.
Разработчики React — стали одними из самых высокооплачиваемых разработчиков Javascript в 2018 году
Вы можете создать новое приложение React с помощью набора инструментов create-react-app. Для начала запустите их через терминал в папке проекта:
1 2 3 |
npm create-react-app my-app cd my-app npm start |
2. Vue
Vue js, созданный Эваном Ю и 234+ энтузиастами имеет более 121000 звезд на GitHub. Это прогрессивная среда для создания пользовательских интерфейсов. Он состоит из доступной базовой библиотеки, которая сосредоточена только на уровне представления, и экосистемы библиотек поддержки, которые помогают решать сложные задачи в больших одностраничных приложениях.
Из инфографики видно, что в этом году Vue полностью устранил маркетинговый разрыв, и почти каждый разработчик наверняка слышал о нем. На мой взгляд, это стало возможным благодаря огромным инвестициям, которые Эван и команда сделали в организацию и участие во встречах и конференциях с 2017 года. Тем не менее, имеет место и очевидный пробел в плане освоения, и в 2019 году ожидается выход большего количества ресурсов для обучения. Чтобы начать создавать приложение vue, установите представление с помощью npm следующим образом:
1 |
npm install vue |
3. Angular
Google Angular с почти 44000 звезд на github — это платформа, которая позволяет легко создавать приложения для Веб. Angular сочетает в себе декларативные шаблоны, внедрение зависимостей, сквозные инструменты и интегрированные лучшие практики для решения задач разработки. Angular дает разработчикам возможность создавать приложения, которые работают в веб, на мобильных устройствах или на компьютерах. Он имеет самый полезный инструментарий для быстрого освоения новичками, есть даже клиент с графическим интерфейсом, называемый консолью.
На диаграмме вы можете видеть резкое различие по сравнению с двумя другими вышеупомянутыми фреймворками, это связано с использованием необъективных данных из-за формулировки вопросов, определяющих Angular js, как автономный от Angular фреймворк. Мы не будем здесь вдаваться в обзор различий между ними. Чтобы установить CLI с помощью npm, откройте окно терминала / консоли и введите следующую команду:
1 |
npm install -g @angular/cli |
Часть 2: Фреймворки уровня данных
Здесь мы рассмотрим все технологии, используемые для передачи и управления данными.
1. Redux
Redux с 45 000 звезд на github — это контейнер с предсказуемым состоянием для приложений JavaScript. Он помогает писать приложения, которые ведут себя согласованно, работают в клиентской, серверной и собственной средах, а также легко тестируются. Вы можете использовать Redux вместе с React или с любой другой библиотекой представлений.
Мы можем наблюдать аналогичную тенденцию узнаваемости бренда, так как почти каждый разработчик JavaScript слышал о Redux. Также стоит отметить большое количество жалоб на сложность в освоении и необходимость упростить концепции, чтобы привлечь больше разработчиков, использующих Redux. Установка осуществляется с помощью следующей команды:
1 |
npm install — save redux |
2. GraphQL
GraphQL от Facebook* с более чем 10 000 звездами на github — это язык запросов для API и среда выполнения для этих запросов с существующими данными. Он предоставляет полное и понятное описание данных в API, давая клиентам возможность запрашивать именно то, что им нужно, и ничего более, облегчая разработку API и предоставляя мощные инструменты для разработчиков.
Очевидно, существует потребность в создании большего количества ресурсов GraphQL для обслуживания многих людей, которые заинтересованы в его изучении в 2019 году. Кроме того, согласно диаграмме, мы видим, что большой разрыв в узнаваемости бренда почти полностью закрыт в 2018 году. Чтобы установить GraphQL, используйте npm:
1 |
npm install graphql |
3. Apollo
Платформа Apollo GraphQL — это реализация GraphQL, которая помогает управлять данными из облака. Он постепенно адаптируется и может быть наложен на существующие службы, включая REST API и базы данных. Apollo включает в себя две библиотеки с открытым исходным кодом для клиента и сервера, в дополнение к инструментам разработчика, которые предоставляют все, что вам нужно для уверенной работы API-интерфейса Graph.
Из приведенной выше таблицы мы видим значительное улучшение узнаваемости бренда и еще больше возможностей для охвата. Кроме того, почти каждый, кто использовал Apollo, действительно готов использовать его снова. Учебники и дополнительные ресурсы по интеграции apollo и graphQL помогут вам добиться большего успеха в 2019 году. Для установки используйте npm:
1 2 3 4 |
// установка предустановленного пакета npm install apollo-boost graphql-tag graphql --save // установка каждого фрагмента независимо npm install apollo-client apollo-cache-inmemory apollo-link-http graphql-tag graphql --save |
Часть 3: Back-end фреймворки
Не так много изменений произошло в этой сфере, express все еще доминирует, и ни один другой Back-end фреймворк не был в состоянии удовлетворить разработчиков так, как express.
1. Express
Express с более чем 41 000 звезд на github представляет собой быстрый, минималистичный веб-фреймворк для node. Это один из JavaScript-фреймворков, который работал удивительно хорошо в 2018 году, поддерживая свой статус короля с большим отрывом от конкурентов. Express — это место для использования JavaScript в бэк-энде приложения. Для установки используйте npm:
1 |
npm install express — save |
2. Next js
Несмотря на то, что данных, достаточных для того, чтобы мы увидели значительный его роста за эти годы, не было, прошедший год был для Next хорошим в плане принятия, и он является наиболее востребованным бэкэнд-фреймворком после express.
Next с более чем 32 000 звезд на GitHub является JavaScript-фреймворком, который ориентирован на back-end. Next предоставляет разработчикам простой способ начать работу и использовать React для создания шаблонов. Он также помогает разработчикам, имеющих опыт работы с React, быстро добиться результатов. Для установки используйте npm:
1 |
npm install --save next react react-dom |
3. Koa
За прошедший год популярность koa возросла, хотя уровень удовлетворенности, похоже, остается на прежнем уровне, поскольку express все еще в тренде. Но, учитывая уровень удовлетворенности остальной частью серверных систем, таких как meteor, мы можем сказать, что koa работает довольно хорошо, и у него есть много возможностей для совершенствования.
Koa с более чем 24 000 звезд на github — это новая веб-платформа, разработанная той же командой, что и Express, она создана для того, чтобы стать меньшей, более выразительной и более надежной основой для веб-приложений и API.
Используя асинхронные функции, Koa позволяет отказаться от обратных вызовов и значительно улучшить обработку ошибок. Koa не включает в ядро промежуточное программное обеспечение, но предоставляет элегантный набор методов, которые делают написание серверов быстрым и приятным. Для установки используйте npm:
1 |
npm install koa |
Заключение
Мы рассмотрели самые востребованные JavaScript-фреймворки, которые будут доминировать в сфере разработки в следующем году. Если вы новичок, очень важно начать с изучения самых актуальных концепций, для преподавателей и создателей контента еще важнее понять, в каком направлении особенно требуется больше ресурсов, и восполнить пробелы. Удачного кодирования и не стесняйтесь комментировать 🙂
Автор: Nwose Lotanna
Источник: //blog.bitsrc.io/
Редакция: Команда webformyself.
* Признана экстремистской организацией и запрещена в Российской Федерации.