Назад

Що таке Node.js?

html code

Джерело фото: https://goo.su/Im2eh2j

Node.js це не бібліотека, і не фреймворк, як може здатися з першого погляду. Це ціла платформа, або, правильніше сказати, середовище виконання JavaScript, що дозволяє мові істотно розширити свої можливості, перетворюючи його з вузькоспеціалізованого на мову загального призначення.

Node.js спирається на рушій Google V8, який компілює JavaScript код в машинний, написаний в основному мовою C++ та Python, і має відкритий вихідний код. В його основі однопоточна подієва модель взаємодії та неблокуюче введення/виведення.

Node.js не тільки дозволяє JavaScript працювати де завгодно, а й додає бракуючу йому функціональність. Наприклад, він дозволяє мові працювати з файлами, або використовувати модулі, написані на інших мовах програмування.

Можливо, саме завдяки Node.js, мова JavaScript стала настільки популярною у світі. Разом з Node.js знаючи лише JavaScript можна мати титул full stack web developer та писати клієнтський та серверний код.

Історія та місія

Причиною виникнення Node.js є спроба винести JavaScript за межі браузера. І це успішно вдалось. На даний момент, завдяки Node.js, код JavaScript можна виконувати, будь-де, як локально, так і на сервері і не важливо яка операційна система встановлена ​​Windows, Linux або iOS.

Перша версія Node.js побачила світ ще в 2009 році як альтернатива популярному веб-серверу Apache, який використовує протилежний підхід до роботи – потоки та блокуюче введення/виведення.

Приблизно через рік був введений менеджер пакетів (npm), про який я розповім трохи згодом. Але забігаючи на перед, скажу, що він суттєво полегшує перевикористання коду, написаного іншими програмістами.

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

Протягом п’яти років Node.js розроблялася та керувалася приватною компанією і в цей період виникли розбіжності в середині ядра розробників, що призвело до появи нової альтернативи – io.js, яка отримала підтримку ES6 та частіші оновлення.

Розрізненість тривала недовго, на початку 2015 року було заявлено про створення нейтрального фонду Node.js Foundation, який підтримали обидві спільноти і восени того ж року Node.js поглинув io.js. З того часу Node.js постійно розвивається і випускаються нові оновлення.

Сфера використання

Node.js використовується величезною кількістю веб-додатків написаних на JavaScript, або одному з популярних бібліотек, наприклад, Angular, React або Vue.

Головні завдання, які виконує Node.js – це обробка HTTP запитів, робота з базою даних, робота з файловою системою тощо, тобто те, чим займається серверна частина веб-додатку.

NPM

NPM (Node Package Manager) – менеджер пакетів для JavaScript, дозволяє керувати установкою, налаштуванням, оновленням та видаленням модулів у середовищі Node.js. Керування здійснюється за допомогою командного рядка.

У розпорядженні розробників гігантський репозиторій, який можна використовувати без обмежень і де можна знайти все, що завгодно, зокрема завдяки величезній спільноті.

Роман. 38 років. Фріланс веб-дизайнер та розробник.