Представляємо вашій увазі переклад статті Nwose Lotannaс, яка була опублікована на blog.bitsrc.io. Там ви можете знайти добірки найкращих фреймворків й інформацію, корисну як для новачків, так і для досвідчених фахівців.
Давайте охопимо поглядом дивовижний шлях розвитку JavaScript в минулому році. Ми проаналізуємо, які javascript-фреймворки для фронтенд-розробки, бекенд-розробки і роботи з даними були найбільш популярними, а також постараємося передбачити майбутніх лідерів.
У цій статті ми будемо спиратися на дані і висновки State of JS, а також інсайдів, якими поділилась компанія JetBrains у своєму щорічному звіті «Екосистема розробників» (The State of Developer Ecosystem).
Щорічне опитування про все, що стосується JavaScript. Прекрасно візуалізовані відповіді розробників, які брали участь в ньому, відображають актуальний стан JavaScript. Опитування охоплює наступні теми: фронтенд-фреймворки, бази даних, інструменти роботи зі станом (state), відносини між фреймворками, вибір фреймворку розробниками і легкість використання, компільовані в JavaScript мови, мобільні фреймворки, системи збирання, інструменти тестування коду для JavaScript і багато іншого.
Це перше опитування, респондентами якого є виключно розробники, які мають справу з JavaScript. Воно було організоване Сашою Грейфе і його помічниками в 2016 році. Серед цільової аудиторії зараз користується величезною повагою. Є й інші не менш популярні опитування - від Stack Overflow (понад 100 тисяч респондентів) або від JetBrains (понад 6 тисяч респондентів). Проте, сьогодні ми зосередимося на опитуванні від State of JS - ще й тому, що за красою візуалізації йому немає рівних.
Ми живемо в епоху компонентів, і це стосується не тільки фронтенду. Зростає популярність таких інструментів, як Bit, що дозволяють легко ділитися компонентами, використовувати їх повторно і створювати нові додатки швидше, збираючи їх разом і синхронізуючи з іншими проектами. Майбутнє точно за компонентно-орієнтованими платформами.
Тут будуть розглянуті фреймворки для фронтенд-розробки в порядку від найбільш популярного - завдяки своїй доступності, а також отриманню задоволення і легкості використання в роботі.
1.React
React (більше 110 тисяч зірок на GitHub) - це ефективна і гнучка декларативна бібліотека JavaScript для збірки UI від команди Facebook. Вона дозволяє без зусиль створювати інтерактивний користувальницький інтерфейс. React не просто підтримує збірку об'єктно-центричних додатків, він її заохочує. Крім того, творці фреймворка з усією серйозністю поставилися до зворотної сумісності, так що в довговічності свого додатку можете бути впевнені. За графіком вище добре видно, що за останні кілька років рівень обізнаності про React значно підвищився. Ось чому бібліотека стане чудовою відправною точкою вашої подорожі у фронтенд-розробку.
React-розробники - одні з найбільш високооплачуваних javascript-розробників в 2018 році.
Ви можете створити новий додаток на React, використовуючи призначений для цього тулчейн create-react-app, на даний момент найпопулярніший серед існуючих. Щоб почати працювати з ним, запустіть наступні рядки в командному рядку папки проекту:
npm create-react-app my-app
cd my-app
npm start
2.Vue
Vue.js, прогресивний фреймворк для збірки користувальницьких інтерфейсів, створений Еваном Ю і ще 234 ентузіастами, набрав більше 121 тисячі зірок на GitHub. Він включає в себе доступну кореневу бібліотеку, яка в першу чергу вирішує завдання рівня уяви, і екосистему додаткових бібліотек, що дозволяє створювати складні і об'ємні односторінкові додатки (Single-Page Applications).
Vue.js вимовляється в точності як слово view («перегляд») і має на 4 тисячі зірок GitHub більше, ніж React.
Як видно на графіку, Vue вдалося перестрибнути маркетингову прірву: про нього чув майже кожен розробник. Можна припустити, що це сталося завдяки величезним зусиллям, які прикладали Еван і його команда з 2017 року, відвідуючи різноманітні збори та конференції, а також організовуючи власні. Проте, пробіл у знаннях розробників все ще існує, і щоб його закрити, в 2019 році необхідно створити більше навчальних матеріалів по роботі з Vue.js. Встановіть цей фреймворк за допомогою npm:
npm install vue
3.Angular
Angular - фреймворк від компанії Google, який отримав майже 44 тисячі зірок на GitHub. Являє собою платформу, яка спрощує збірку додатків у веб. У Angular поєднуються декларативні шаблони, впровадження залежності, двостороннє зв'язування даних і кращі практики вирішення проблем розробки. Ця платформа дозволяє збирати додатки для веб, мобільних пристроїв і ПК. У ній пропонується найбільш зручний і зрозумілий для початківців інтерфейс командного рядка (CLI) і навіть консоль (Console) - клієнт з графічним інтерфейсом.
Дивлячись на графік, можна помітити величезну різницю в порівнянні з графіками описаних вище фреймворків. Справа в необ'єктивності даних, що виникла через формулювання питань, яке виключає AngularJS - незалежний від Angular фреймворк. Ось чому цю візуалізацію краще не брати до уваги. Для установки CLI за допомогою npm відкрийте вікно командного рядка або консолю і введіть наступну команду:
npm install -g @angular/cli
У цій частині ми розглянемо технології передачі даних і управління ними.
1.Redux
Redux, який набрав 45 тисяч зірок на GitHub, - це передбачуваний контейнер стану (state) для javascript-додатків. Він допомагає писати програми зі стабільним поведінкою, які запускаються на клієнті, сервері і в native-середовищі і легко тестуються. Redux можна використовувати разом з React або будь-який іншою бібліотекою.
На графіку можна спостерігати ті ж тенденції підвищення обізнаності про бренд, що і у випадку з Vue: про Redux чув майже кожен javascript-розробник. При цьому деякі з них скаржаться на складність роботи з цим фреймворком. Щоб зробити його для розробників більш привабливими, а концепти - доступнішими, потрібно більше навчальних матеріалів. Для установки скористайтеся командою:
npm install — save redux
2.GraphQL
GraphQL від компанії Facebook з рейтингом на GitHub більше 10 тисяч зірок - це мова для формулювання запитів в API (програмному інтерфейсі додатка) і середовище виконання цих запитів за допомогою існуючих даних. З його допомогою можна надати повний і зрозумілий опис даних в API, дозволяючи клієнтам запитувати тільки те, що їм необхідно, і нічого більше. Завдяки цьому з часом стає простіше розвивати програмні інтерфейси додатків і використовувати потужні інструменти розробки.
Зрозуміло, що в 2019 році з'явиться ринкова ніша під матеріали по роботі з GraphQL, адже безліч людей зацікавлено в його вивченні. Крім того, на графіку видно, що відсутність обізнаності про бренд в 2018 вдалося майже повністю усунути. Щоб встановити GraphQL, використовуйте npm:
npm install graphql
3.Apollo
Платформа Apollo - це реалізація GraphQL, яка дозволяє направляти дані з хмари в UI. Вона придатна для поступового впровадження і може виступати додатковим шаром для вже існуючих сервісів, включаючи API і бази даних, побудовані з урахуванням REST. На додаток до інструментарію розробника, який надає все, щоб впевнено запустити графовий API, в Apollo входять дві бібліотеки з відкритим вихідним кодом для клієнта і для сервера.
На графіку вище видно, наскільки підвищився рівень обізнаності про бренд і як багато ще потрібно зробити в цій галузі. Видно також, що майже кожен, хто спробував Apollo, готовий використовувати його знову. Однак не завадило б додати нових навчальних матеріалів, щоб в 2019 році зробити платформу успішнішою. Для установки використовуйте npm:
// installing the preset package
npm install apollo-boost graphql-tag graphql --save
// installing each piece independently
npm install apollo-client apollo-cache-inmemory apollo-link-http graphql-tag graphql --save
У цій області без особливих змін: Express все ще попереду - більше жоден бекенд-фреймворк не зміг в тій же мірі порадувати розробників.
1.Express
Володар більше 41 тисячі зірок на GitHub, Express - швидкісний, гнучкий і мінімалістичний веб-фреймворк для додатків Node.js.
У 2018 році Express впорався зі своїми завданнями блискуче: він не тільки зберіг статус лідера, але і залишив конкурентів далеко позаду. Працюючи з JavaScript в бекенді додатку, оберіть саме його, і не прогадаєте. Для установки використовуйте npm:
npm install express — save
2.Next js
Хоча для візуалізації зростання за час існування Next виявилося недостатньо даних, все ж ми можемо сказати, що у цього бекенд-фреймворку був непоганий рік, який зробив його найбільш популярним після Express.
Next, який отримав понад 32 тисяч зірок на GitHub, дає розробникам можливість легкого старту, адже він використовує React для шаблонів. Розробники з досвідом роботи в React за допомогою Next можуть досягнути швидкого результату. Для установки використовуйте npm:
npm install --save next react react-dom
3.Koa
За минулий рік популярність Koa виросла, хоча здається, що рівень задоволення розробників цим фреймворком не змінився, адже Express як і раніше лідирує. Однак подивившись на графіки інших бекенд-фреймворків (наприклад, Meteor), можна сказати, що справи Koa непогані - і можуть бути ще кращі.
Цей новий веб-фреймворк, який набрав більше 24 тисяч зірок на GitHub, був створений тією ж командою, що і Express, як менш громіздка, більш виразна і надійна платформа для веб-додатків і API. Використовуючи засоби асинхронного програмування, Koa дозволяє відмовитися від callback-функцій і в рази ефективніше обробляти помилки. В ядрі Koa не проводиться збірка проміжного програмного забезпечення. Цей фреймворк має набір першокласних методик, які роблять написання серверів швидким і приємним заняттям. Для установки використовуйте npm:
npm install koa
- Всі зображення та візуальні дані взяті з офіційного веб-сайту State of JavaScript.
- Більш детальна інформація про необ'єктивність даних по Angular доступна тут. А тут ви можете подивитися розбір опитування.
- Деякі дані з опитування Stack Overflow доступні тут.
- Деякі дані з опитування JetBrains доступні тут.
Ми розглянули javascript-фреймворки, які були найбільш затребуваними серед розробників в минулому році і залишаться такими в 2019. Якщо ви новачок, важливо перепробувати всі в пошуках найбільш зручного. Не менш важливо для викладачів і авторів статей знати, яких ресурсів не вистачає, щоб заповнювати ці прогалини.
Посилання на статтю - https://blog.bitsrc.io/the-most-in-demand-javascript-frameworks-for-developers-in-2019-39bba192d8dc