Які мови програмування і технології вам варто вивчити в 2019, бібліотека програміста

Прогресивні веб-додатки (Progressive Web Apps)

Хайп навколо ботів

Про ботах в цьому році говорили всі. Були створені цілі платформи для їх запуску і фреймворки для їх розробки. Короткий вступ можна побачити тут. Якщо ви покваптеся, ще встигнете осідлати цю хвилю. Але коли пік популярності ботів пройде, я думаю, вони будуть виконувати якісь банальні завдання, такі як підтримка користувачів.

Консолідація веб-фреймворків

Компанії і розробники з усього світу освоюють «хмара». Це віртуалізувати комп'ютерна інфраструктура, доступна за вимогою і повністю настроюється з панелі управління. Великою трійкою провайдерів є AWS, Google Cloud і Azure. Завдяки помірними цінами хмари доступні для маленьких компаній і індивідуальних розробників, тому знайомство з хмарами буде хорошою інвестицією в майбутнє.

Машинне навчання (Machine Learning, ML)

Які мови програмування і технології вам варто вивчити в 2017, бібліотека програміста

Інші скриптові мови

Ruby 2.3 був випущений теж досить недавно. У новій версії було внесено багато виправлень продуктивності. Ruby - хороший вибір, якщо вам потрібен скриптова мова. Але дійсно крутим він стає в поєднанні з рейками (Ruby in Rails, RoR).

Enterprise

Якщо вам потрібно щось більш екзотичне, то ваш вибір - Crystal або Elixir. які комбінують зручний ruby-подібний синтаксис і величезну продуктивність. Або ви можете ознайомитися з такими функціональними мовами програмування, як Haskell або Clojure. Іншими двома дуже потужними мовами програмування є Rust і Go. що теж є хорошим вибором.

Які мови програмування і технології вам варто вивчити в 2017, бібліотека програміста

Веб отримав два крутих нововведення - це Web Assembly і Service Workers. Вони відкривають шлях до створення швидких і потужних веб-додатків, які, можливо, навіть зможуть зрівнятися з нативними. А Service Workers дозволять використовувати API повідомлень, що є ще одним кроком до прогресивних веб-додатків.

Vue.js також оновився до версії 2.0. Він бере кращі ідеї з Angular, React і Ember і збирає їх в одному фреймворку, простому для використання. Також він кілька компактніше, ніж вищезгадані фреймворки. Думаємо, подивитися Vue.js tutorials не буде зайвим.

Іншим хорошим вибором буде Aurelia і React. Але екосистема React значно розрослася за останній рік, що робить його набагато складніше для новачків. Однак досвідчені розробники можуть скомбінувати ці бібліотеки з GraphQL. Relay. Flux і Immutable.js в повноцінний стек.

Які мови програмування і технології вам варто вивчити в 2017, бібліотека програміста

Вибір бекенд-фреймворків дуже великий, все залежить від ваших уподобань і специфічних потреб. Останнім часом поширюється тренд на відділення бекенд від логіки, перетворюючи його в API, який використовується фронтенда і мобільними додатками. Але фулстак фреймворки все ще широко використовуються і добре підходять для багатьох додатків, тим більше, що їх легше освоїти.

Node.js - це найкращий спосіб запустити JS поза браузера. У минулому році було випущено багато релізів, які покращували потужність і реалізували фичи з ES6. Node має фреймворки для створення швидких API, серверів, десктопних додатків і навіть роботів. Можливо, вам сподобаються ці фреймворки: Express. Koa. Next. Nodal.

PHP - найпопулярніший веб-мову, для нього написано велику кількість бібліотек і фреймворків. Завдяки великій кількості функцій і гарною документації велика спільнота сформував Laravel. Була випущена третя версія Zend Framework. який орієнтований на бізнес. Також багато нових релізів Symfony було випущено, що робить його ще кращим фулстек вибором.

Python теж має свою пару фулстек і мінімалістичного фреймворків. І ім'я цій парі - Django і Flask. В Django 1.10 був реалізований повнотекстовий пошук для Postgres і кардинально переписані механізм шарів (middlewares).

В екосистемі Java теж є свої популярні веб-фреймворки: Play і Spark. А ще їх можна використовувати разом зі Scala.

Для ентузіастів непоганим вибором є Phoenix. написаний на Elixir. І схоже, це майбутній повноцінний конкурент Rails з величезною потужністю. Якщо ви вирішили ознайомитися з Elixir, то цей фреймворк заслуговує вашої уваги.

Які мови програмування і технології вам варто вивчити в 2017, бібліотека програміста

В цьому році було випущено два великих поновлення PostgreSQL - 9.5 і 9.6. З ними в postgresql додали UPSERT (aka ON DUPLICATE KEY UPDATE), відомий нам з MySQL, поліпшили повнотекстовий пошук, поліпшили швидкість і зробили більш ефективними реплікацію, агрегацію, індексування і сортування. Postgres використовують для великих і масштабованих баз даних, тому ці оптимізації дуже важливі.

Redis - це наше улюблене сховище ключ-значення. Воно маленьке і швидке. Ви можете використовувати його як альтернативу memcache, як NoSQL базу даних або як систему обміну повідомленнями між процесами. Redis надає великий вибір структур даних, а з майбутньою четвертої версії ми отримаємо систему модулів і поліпшену реплікацію.

Які мови програмування і технології вам варто вивчити в 2017, бібліотека програміста

Yarn - це альтернативний менеджер пакетів для Node.js, розроблений Facebook. Він швидше встановлює пакети і краще піклується про безпеку. Як джерело пакетів він використовує регістр NPM, тому проблеми з пошуком потрібного пакета не буде. Також yarn сумісний з форматом package.json. який використовує npm.

Десктоп додатки ще живі. Незважаючи на те, що все більше додатків працюють в браузері, а Web API тільки розширюється, іноді все ж потрібен доступ до того, куди браузер доступу не має. Ось тут в гру і вступають Electron і NW.js. які дозволяють створювати десктопні програми, використовуючи веб-технології. Щоб дізнатися більше, почитайте ці туторіали по Electron і NW.js.

Також трендом минулого року стало мати в команді окремих розробників, які відповідають за розгортання ПО, їх називають DevOps. Це дозволяє швидше випускати релізи та фіксують баги в продакшені. Розробники з таким досвідом більш цінуються компаніями, тому ознайомитися з цими технологіями буде не зайвим. Деякими з таких технологій є Ansible і Docker. Знання командного рядка Linux і базові навички адміністрування є майже обов'язковими для DevOps.

Які мови програмування і технології вам варто вивчити в 2017, бібліотека програміста

Хмари стають дедалі популярнішими, багато компаній закрили власні датацентри і перемістили свої дані туди. Основними провайдерами залишилися AWS. Google Cloud і Azure. Всі вони мають потужну інфраструктуру, включаючи віртуальні машини, хостинг бази даних, сервіси машинного навчання і багато іншого. Ціни ж стрімко падають, тому хмари стають доступні малим компаніям та індивідуальним розробникам. Непогано було б навчитися розгортати свої додатки на одній з цих платформ.

Віртуальна реальність (VR) і доповнена реальність (AR) вже відомі деякий час, але тільки недавно вони стали досить зрілими. Facebook (Oculus Rift), Google (Daydream) і Microsoft (Windows Holographic) - всі вони мають платформи для VR, відкриті для сторонніх розробників. Так, VR шоломи ще мають деякі проблеми типу нудоти і використовуються в основному в іграх, але у них є великий потенціал, який вже почали використовувати.


Схожі статті