DEV Community

Berkan Yıldırım
Berkan Yıldırım

Posted on

Node.js Nedir ?

Image description

Arkadaşlar bu yazımda sizlere patika.dev üzerindeki Node.js eğitimlerini tamamlarken öğrendiklerimi sizler ile paylaşarak hem kendi bilgilerimi tekrar ederek daha iyi öğrenmeyi , hem de bu konu hakkında bilgi almak isteyen arkadaşlara yardımcı olmayı hedefliyorum.

O zaman hemen başlayalım nedir bu Node.js ?

Javascript programlama dili bildiğiniz üzere eskiden sadece istemci tarafında (client-side) çalışan bir dildi. Tarayıcıda çalıştırdığımız Chrome V8 Engine kullanıma sunuldu ve artık sunucu tarafında da (server-side) Javascript dilini kullanabiliyoruz. İşte Javascript dilini sunucu tarafında kullanmamıza olanak sağlayan Chrome V8 Engine, Node.js olarak adlandırılmaktadır.

V8 Javascript motoru hakkında daha detaylı bilgi almak için aşağıdaki linki tıklayabilirsiniz.

V8.dev

Node.js temel olarak sunucu tarafında çalışan javascripttir. Javascript temelli olması sebebiyle çok dinamik ve hızlı yapısı vardır.

Javascript dilinin Node.js vasıtasıyla Back-end’e taşınmasıyla artık sadece bir dil bilerek full-stack uygulama geliştirebilirsiniz.

Peki Javascript ve Node.js Neden bu kadar son dönemde popüler oldu?

Node.js’in en önemli özelliği asenkron yapıda çalışması ve non-blocking olması. Peki nedir bu asenkron çalışma ve non-blocking?

Node.js tarafına bir işlem için istek gönderildiğinde node.js onu alıp hemen işleme koyuyor ama diğer işlemi almak için bu işlemin bitmesini beklemiyor. Sırayla istekleri alıyor ve sonuçları beklemeden devam ediyor. Sonuçlar geldikçe iletiyor.

Bu durumda bir istek diğer isteğin bitmesini beklemediği için diğer isteği engellememiş oluyor. Hangisi önce biterse o isteğin cevabı geliyor. İşte bu mantığa asenkron çalışma mantığı deniyor ve bir işlem diğer işlemi engellemediği içinde non-blocking oluyor.

Aynı zamanda birden çok kullanıcıya hızlı cevap verebildiği için ölçeklenebilirlik sorununa çözüm sunuyor. Bu da aslında onun popüler olmasının temel nedenlerinde biri. Aynı anda binlerce insanın kullandığı bir sistem geliştiriyorsak node.js çok iyi bir tercih olacaktır.

Nodejs’in en büyük avantajlarından bir tanesi de modüler yapısı ve bu yapıyı destekleyen paket yönetim sistemi olan npm (nodejs package manager). Npm’i Node.js projelerinde kullanılmak üzere içerisinde bir çok modül barındıran bir depo gibi düşünebiliriz.

Bu modüller open-source geliştiricileri tarafından yazılarak npmjs.com üzerine yüklenmektedir. Npm içerisinde şu an 1 milyondan fazla paket, modül eklenmiş durumda. Bu da aslında popülaritesini gerçekten net olarak gösteriyor.

Node.js Kullanan Bazı Teknoloji Şirketleri

  • Apple
  • Google
  • IBM
  • Linkedin
  • Pinterest
  • Paypal
  • Netfilix

Bu yazımda araştırmalarım ve patika.dev üzerinde aldığım Node.js dersleri ile öğrendiklerimi ve araştırmalarımı sizlerle paylaşmaya çalıştım.

Zaman ayırıp okuduğunuz için teşekkürler. Bir sonraki yazımda görüşmek üzere...

Top comments (0)