Node.js

**Node.js** –— server-side Veb tətbiqetmələr yazmaq üçün istifadə olunan açıq qaynaqlı, cross-platform iş mühitidir (İng. runtime environment). Node.js -in bir JavaScript mühərriki olmamasına baxmayaraq onun bir çox modulu JavaScript ilə yazılıb və developerlər JavaScript ilə yeni modullar yaza bilərlər. Node.js Skriptləşdirmə dilini V8 (JavaScript mühərriki) işlədərək çevirir.

Ən vacib xüsusiyyəti JavaScript -in asinxron G/Ç (İng. asynchronous I/O) imkanı ilə real-time veb tətbiqetmələrdə olduğu kimi çoxlu giriş-çıxışlı veb tətbiqetmələr yazmağı mümkün etməsidir.

Node.js istifadə edən məşhur şirkətlərdən bəziləri GoDaddy, Groupon, IBM, Linkedin, Microsoft, Netflix, PayPal, Voxer, Walmart və Yahoo -dur.

## Tarixi
Node.js 2009-cu ildə Ryan Dahl tərəfindən yazılmışdır. İlk nəşr yalnız Linux -u dəstəkləyirdi. Onun inkişaf etdirilməsinə Dahl başçılıq edirdi, daha sonralar isə Joyent sponsor olmuşdu.

Layihə 2009-cu il Noyabr ayının 8 -də European JSConf -un açılışında nümayiş olunmuşdur.

2011-ci ildə Node.js mühiti üçün npm adlanan paket meneceri istifadəyə verildi. Kitabxanaların yüklənməsi, yenilənməsini və silinməsini sadələşdirmək üçün dizayn edilmiş bu paket meneceri açıq qaynaqlı Node.js kitabxanalarının yayımlanması və paylaşılmasını asanalaşdırır.

2011-ci ilin İyun ayının 11 -də Microsoft və Joyent Node.js -in Windows versiyasını yayımladı. İlk Node.js dəstəkləyən Windows yenilənməsi 2011-ci ilin İyul ayında yayımlandı.

2012-ci ilin Yanvar ayında Dahl layihənin idarəsini npm -in yaradıcısı Isaac Schlueter -a verdi və 2014-cü ilin Yanvar ayında Schlueter layihənin lideri kimi Timothy J. Fontaine -i tanıtdı.

2014-cü ilin Dekabr ayında Fedor Indutny Node.js -i kopyalayaraq alternativ kimi io.js -i yaratdı. Node.js -dən fərqli olaraq yazarlar io.js -i Google V8 JavaScript motorunun son yayımları ilə paralel aparmaq istəyirdilər.

2015-ci ilin Fevral ayında neytral Node.js Foundation yaradıldı. 2015-ci ilin İyun ayında Node.js və io.js icmaları Node.js Foundation altında birlikdə işləməyə qərar verdilər.

2015-ci ilin Sentyabr ayında Node.js v0.12 və io.js v3.3 — Node.js v4.0 -də yenidən birləşdilər. Bu Node.js -ə V8 ES6 xüsusiyyətini gətirdi. 2016-cı ildən io.js saytında Node.js -ə keçid məsləhət görülür.

## Ümumi baxış
Node.js — JavaScript və müxtəlif nüvə funksiyonallıqlarını özündə saxlayan "modullar" toplusu ilə Veb serverlərin və şəbəkə alətlərinin yaradılmasına icazə verir. Modullar fayl sistemi G/Ç, şəbəkə (DNS, HTTP, TCP, TLS/SSL və ya UDP), binar data (bufferlər), kriptoqrafiya funksiyaları, data axını və digər nüvə funksiyonallıqlarını özündə saxlayır. Node.js -in modulları server tətbiqetmələrinin yazılmasındakı kompleksliliyi azaltmaq üçün dizayn edilmiş API -lardan istifadə edir.

Node.js tətbiqetmələri Linux, Mac OS X, Microsoft Windows, NonStop və Unix serverlərində işlədilə bilər. Onlar alternativ olaraq CoffeeScript (JavaScript alternativi), Dart, TypeScript və ya JavaScript -ə compile oluna bilən hər hansı bir dil ilə yazıla bilər.

Node.js əsasən PHP kimi şəbəkə proqramları (vebdə işləyən proqramlar) qurmaq üçün istifadə olunur. Node.js və PHP -nin ən böyük fərqi odur ki, PHP -də bir-çox funksiya işi bitənə qədər bloklayır (əmrlər yalnız əvvəlki əmrlər yerinə yetirildikdən sonra yerinə yetirilməyə başlayır), hansı ki, Node.js -də funksiyalar asinxron işləyir (əmrlər paralel yerinə yetirilir və tamamlanma və ya xəta siqnalları üçün callback funksiyalardan istifadə edir).

## İstinadlar

## Xarici keçidlər
* Node.js rəsmi saytı
* Github layihə səhifəsi