Node.js: Nedir ne değildir?

Kısaca:

Reengen
reengen
2 min readJan 16, 2018

--

Node.js, JavaScript’dir.
Web tarayıcılarına muhtaç kalmadan heryerde çalışabilir.
Java ile yakından uzaktan ilgisi yoktur.

Ne işe yarar?

Temelde iki şeye:

  1. Bir yazılımın hem arkayüz (backend) hem önyüz (frontend) kodlarını aynı dilde yazmanın tek yoludur diyecektik ama itiraz edenler çıkacaktır. O yüzden en kolay yoludur deyip geçelim.
  2. Günümüzde çoğu uygulama, zamanının çoğunu veritabanlarına veya Internet’deki çeşitli servislere istek yapıp gelen sonuçları beklemekle geçirir. Node.js, yapı gereği asenkrondur. Beklemeyi hiç sevmez. İstekleri teker teker yapmak yerine paralel olarak yapar. İstekler bittikleri zaman Node’u “geri ararlar” (callback). Bu sayede anlık olarak çok sayıda istek hızlı bir şekilde işlenebilir.

Asenkron Programlamayı Öğrenmesi Zor mudur?

Hemen her programlama dilinde işler sırayla ilerler. Örneğin “Git veritabanından bir kayıt oku” komutu bitmeden sıradaki komut başlamaz. Node.js’de ise başlar. Bu da alışık olmayanlar için kafa karıştırıcı olsa da sonuçta yaşanacak performans artışına ve ruhsal aydınlanmaya değerdir ya da en azından biz (ve milyonlarca Node.js geliştiricisi) öyle düşünüyor.

Node.js Ekosisteminin Diğerlerinden Farkı Nedir?

Node.js, JavaScript’in fonksiyonel programlamaya uygun yapısı sayesinde modüler kod yazmayı teşvik eder. Her bir modül tıpkı Unix felsefesinde olduğu gibi sadece tek bir işi yapmaya çalışır. Ne eksik ne fazla.

Node.js’de kod yazmak lego parçalarını birleştirmeye benzer. Herşeyi yapmaya çalışan hantal bir framework kullanmak yerine yüzbinlerce açık kaynak paketten oluşan NPM (Node Package Manager) ekosisteminden küçük büyük istediğiniz modülleri karıştırıp kullanabilirsiniz.

Kimler Kullanıyor?

Startup’lardan büyük şirketlere hemen herkes. Birkaç örnek: Apple, Google, IBM, Microsoft, NASA, Netflix, PayPal, Pinterest ve bir de biz tabi ki.

Author: Aycan Gulez, CTO at Reengen

--

--

Reengen
reengen

Energy IoT Platform is a PaaS Analytics Solution for Global Energy & Utilities Industry