Це перший пост серії туторіалів по Node.js під назвою Node Hero. Ви дізнаєтесь, що таке Node.js, як встановити програмну платформу на своєму комп'ютері і як почати роботу з нею.
В наступних розділах ми розпочнемо справжню розробку додатків.
Давайте розпочнемо!
Node.js в Nutshell
Node.js - середовище виконання JavaScript, побудоване на рушії V8. Node.js використовує подійно-орієнтовану модель з неблокуючим введеням/виведенням, що робить його легким і ефективним.
Іншими словами: Node.js дає можливість писати сервери за допомогою JavaScript з неймовірною продуктивністю. Як сказано у документації: Node.js - середовище виконання, яке використовує той самий рушій V8 Javascript, який ви можете знайти в браузері Google Chrome. Але це не достатньо для успіху Node.js - Node.js використовує libuv, мультиплатформенну бібліотеку з фокусом на асинхронний I/O.
З точки зору розробника Node.js є однопотоковим - але libuv обробляє потоки, file system івенти, імплементує event loop і т.д. У більшості випадків ви не будете взаємодіяти з цим безпосередньо.
Інсталяція Node.js для початку роботи
Щоб отримати останню версію Node.js, перейдіть на офіційнуй веб-сторінку.
У такому випадку не важко все встановити - проте якщо пізніше ви захочете додати більше версій Node.js, то краще використовувати nvm (Node Version Manager).
Як усе встановиться, ви можете використати простий CLI API:
Інсталяція Node.js-версій
nvm install 4.4
Потім, якщо ви хочете перевірити експериментальну версію:
nvm install 5
Щоб перевірити, чи маєте ви Node.js, запустіть:
node --version
Якщо усе було зроблено правильно, це поверне номер версії активного Node.js.
Використання Node.js-версій
Якщо ви працюєте над проектом, який підтримує Node.js v4, ви можете використовувати його за допомогою наступної команди:
nvm use 4
Ви можете перейти на Node.js v5 з тою самою командою:
nvm use 5
Окей, тепер ми знаємо, як встановити і перемикатись між версіями Node.js, але для чого це все потрібно?
З моменту Node.js Foundation був сформований, Node.js має план релізу. Це дуже схоже на інші проекти Linux Foundation. Це означає, що є два релізи: стабільний реліз і експериментальний. У Node.js стабільні версії з довгостроковою підтримкою (LTS) є ті, які починаються з парних чисел (4, 6, 8 ...), а експериментальні версії - непарні числа (5, 7 ...). Ми рекомендуємо використовувати версію LTS у розробці, а тестувати нові речі з експериментальною версією.
Якщо ви на Windows, то є альтернатива для nvm: nvm-windows.
Node.js туторіал: Hello World
Давайте спробуємо Node.js у терміналі! Запустіть його через node
:
$ node
>
Окей, давайте щось виведемо:
$ node
> console.log('hello from Node.js')
Після натискання на Enter
, ви отримаєте щось схоже на це:
> console.log('hello from Node.js')
hello from Node.js
undefined
Час створити наш додаток Hello Node.js!
Давайте почнемо з створення файлу під назвою index.js
. Відкрийте ваш IDE, створіть новий файл і збережіть його як index.js
. Як ви закінчите з цим, скопіюйте наступний фрагмент коду в цей файл:
// index.js
console.log('hello from Node.js')
Для того, щоб запустити його, вам потрібно знову відкрити свій термінал і перейти в директорій, в якому ви розмістили index.js.
Після того як ви успішно це зробили, запустіть файл за допомогою команди node index.js
. Ви побачите, що вийде той самий результат, як і раніше - вивід рядка безпосередньо у терміналі.
Розділення вашого додатку на модулі
Тепер у вас є свій index.js
файл, так що настав час ускладнити гру! Давайте створимо щось складніше, розділивши наш вихідний код на кілька файлів JavaScript для кращих читабельності і підтримки. Щоб почати, поверніться в IDE і створіть таку структуру директорію (з порожніми файлами), але зараз без package.json
, ми згенеруємо цей файл автоматично в наступному кроці:
├── app
| ├── calc.js
| └── index.js
├── index.js
└── package.json
Кожен проект Node.js починається зі створення файлу package.json
- ви можете думати про це як JSON-представлення додатка і його залежностей. Він містить назву вашого додатку, автора (ви), і всі залежності, які необхідні для запуску програми. Ми збираємося розглянути залежності пізніше в розділі Використання NPM.
Ви можете інтерактивно створити файл package.json
за допомогою команди npm init
в терміналі. Після enter
вам потрібно буде ввести назву вашого додатку, версію, опис і т.д. Не турбуйтесь, просто натискайте enter
, поки ви не отримаєте JSON-сніпет і питання is it ok?
. Натисніть enter
ще один раз і вуаля, ваш package.json було автоматично згенеровано і розміщено у папку вашого додатку. Якщо відкрити цей файл у вашому IDE, це буде виглядати приблизно так:
// package.json
{
"name": "@risingstack/node-hero",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node index.js"
},
"author": "",
"license": "ISC"
}
Буде непогано додати скрипт запуску start
для вашого package.json - як тільки ви зробите, що, як показано в наведеному вище прикладі, ви зможете запускати додаток і з командою npm start
.
Тепер давайте повернемось до першого файлу, який ви створили і назвали index.js
. Я рекомендую зберігати цей файл дуже простим - у ньому достатньо тільки require
сам додаток (index.js файл з піддиректорію /app
, який було створеного раніше). Скопіюйте наступний скрипт в ваш файл index.js
і збережіть його:
// index.js
require('./app/index')
Тепер час розробляти реальний додаток. Відкрийте файл index.js з папки /app
, щоб створити дуже простий приклад: додавання масиву чисел. В цьому випадку index.js
файл буде містити тільки цифри, які ми хочемо додати, і логіку, яка буде робити розрахунок.
Вставте цей скрипт в файл index.js
в директорії /app
.
// app/index.js
const calc = require('./calc')
const numbersToAdd = [
3,
4,
10,
2
]
const result = calc.sum(numbersToAdd)
console.log(`The result is: ${result}`)
Тепер вставте реальну бізнес-логіку в файл calc.js
, який можна знайти в тій же папці.
// app/calc.js
function sum (arr) {
return arr.reduce(function(a, b) {
return a + b
}, 0)
}
module.exports.sum = sum
Для того, щоб перевірити, чи все зроблено успішно, збережіть ці файли, відкрийте термінал і введіть npm start
або node index.js
. Якщо ви все зробили правильно, ви отримаєте відповідь: 19. Якщо щось пішло не так, уважно перегляньте вивід консолі і знайдіть рішення.
Далі: Частина 2 - Використання NPM
Ще немає коментарів