Node.js — падзейна-арыентаваная серверная платформа распрацоўкі праграм для інтэрнэту. Як мова праграмавання выкарыстоўваецца JavaScript (ёсць пашырэнне, якое дазваляе распрацоўку на CoffeScript — спрошчанай мове праграмавання, якая аўтаматычна канвертуецца ў JavaScript). Зыходны код Node.js заснаваны на V8 JavaScript Engine — распрацаваным Google рухавіку JavaScript з адкрытым зыходным кодам, які выкарыстоўваецца ў браўзеры Google Chrome.
Распрацоўка Node.js пачалася ў 2009 годзе як персанальны некамерцыйны праект Раяна Даля (англ.: Ryan Dahl), пазней распрацоўку праекту спансавала кампанія Joyent. Станам на 2026 год развіццём Node.js займаецца фонд OpenJS.
Node.js выкарыстоўваюць карпарацыі GoDaddy, Groupon, IBM, LinkedIn, Microsoft, Netflix, PayPal, Rakuten, SAP, Tuenti, Voxer, Walmart, Yahoo! і Cisco Systems.
Прыклады
Рзалізацыя найпрасцейшага HTTP-сервера на Node.js, які адказвае тэкстам «Hello World» на кожны запыт:
var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(1337, '127.0.0.1'); console.log('Server running at http://127.0.0.1:1337/');
Каб запусціць сервер дастаткова захаваць гэты код у файл (напрыклад example.js) і выканаць у камандным радку каманду накшталт:
% node example.js
Другі вядомы прыклад — TCP-сервер, які вяртае кліенту тэкст кожнага атрыманага запыту:
var net = require('net'); var server = net.createServer(function (socket) { socket.write('Echo server\r\n'); socket.pipe(socket); }); server.listen(1337, '127.0.0.1');
Супольнасць распрацоўшчыкаў
Дзейнасць супольнасці распрацоўшчыкаў Node.js у асноўным сканцэнтравана вакол спісаў рассылкі nodejs і nodejs-dev, а таксама IRC канала #node.js на freenode. Штогод супольнасць збіраецца на NodeConf — канферэнцыю распрацоўшчыкаў Node.js.
Пашырэнне функцыянальнасці
Базавую функцыянальнасць Node.js можна пашырыць з дапамогай падключальных пакетаў. У склад дыстрыбутыву Node.js уваходзіць npm — менеджер пакетаў пашырэння, сістэма, якая спрашчае працэс спампоўкі і ўсталёўкі пакетаў, а таксама сочыць за іх узаемазалежнасцямі. Назва гэтай сістэмы, адпаведна яе аўтару, не з’яўляецца скарачэннем «Node.js Packet Manager».
Бібліятэка даступных для ўсталёўкі пакетаў называецца npm registrty Архівавана 30 ліпеня 2012. і налічвае больш за 9 тысяч пакетаў. Бібліятэка адкрыта для дапаўнення.
Спасылкі
- Афіцыйны вэб-сайт http://nodejs.org
- Рэпазітарый зыходнага кода
- Форум на Google groups
