Node.js ve NPM Hakkında Temel Bilgiler

mervecengiz
4 min readJun 13, 2021

--

Bir web sayfasında kullanıcı etkileşimi (tıklamalar, uyarı mesajları, açılır pencereler vb.) oluşturan kod artık tek başına bir uygulama haline geldi. Tamamen JavaScript kullanarak yüksek performanslı, gerçek zamanlı ve ölçeklenebilir uygulamalar oluşturmak artık mümkün. Tüm bunları sağlayan platform Node.js’in tek amacı javascript kodunu makine koduna çevirmektir ve bu yazımda sizlere bundan bahsetmeye çalışacağım.

Node.js Nedir?

Node.js, JavaScript tabanlı sunucu tarafında koşan, ve ağ bağlantılı uygulamalar geliştirebilmemizi sağlayan bir bir platformdur. Altyapısını Google’ın V8 JavaScript Engine‘ninden alması yüksek performanslarda çalışabilmesini sağlar.

Yüksek performans ve hız sunduğu için anlık mesajlaşma, tek sayfa uygulamalar, gerçek zamanlı uygulamalar veya ağır yük altında çalışan uygulamalar yapmak için node.js idealdir. Windows, Linux ve OS X işletim sistemlerinde sorunsuz bir şekilde çalışabilir.

Node.js’in avantajlarından baksedecek olursak;

  • Non-blocking: İş akışında, tek bir thread ile bloklanmadan çalışabilme.
  • Hızlı Olması: Google Chrome’un V8 JavaScript Engine üzerine inşa edilen Node.js kütüphanesi kod yürütmede çok hızlıdır.
  • Eşzamansız ve İşleme Dayalı Olması: Node.js kütüphanesinin tüm API’lerı eşzamansızdır, bir diğer apiyi engellemez. Yani Node.js tabanlı bir sunucunun hiçbir zaman bir API’nin veri döndürmesini beklemediği anlamına gelir.
  • Lisans: Node.js açık kaynak kodludur ve MIT lisansı altında yayınlanmıştır.
  • Arabelleğe Alma İşlemi: Node.js uygulamaları hiçbir veriyi arabelleğe almaz. Bu uygulamalar, verileri yığınlar halinde çıkarır.
  • Paket Yönetimi: NPM (Node paket yöneticisi / package manager) ile bağımlılıkları (modül / paket) kolaylıkla yönetebilme.

NPM Nedir?

Öncelikle npm’in kendi sitesindeki tanımından başlayacak olursam:

npm birçok şeydir.

npm, Node.js için paket yöneticisidir. JavaScript geliştiricilerinin paketlenmiş kod modüllerini kolayca paylaşmasına yardımcı olmak için 2009'da açık kaynaklı bir proje olarak oluşturuldu.

npm, açık kaynak kod paketlerinin halka açık bir koleksiyonudur.

npm, geliştiricilerin bu paketleri kurmasına ve yayınlamasına izin veren komut satırı istemcisidir.

Node.js denildiğinde Npm’den bahsetmemek olmaz. Npm’i Node.js projelerinde kullanılacak birçok modülü içeren bir depo olarak düşünebiliriz. Bu modüller açık kaynak geliştiriciler tarafından yazılır ve npmjs.com’a yüklenir.

Npm projemizde paket yönetimini otomatikleştirdiğini söyleyebiliriz.

Npm ile temel olarak yapabileceğimiz şeyler ise paket yükleme, silmek,güncellemek,listelemek,yüklü olan paketlerin durum kontrolüdür.

! Npm komut satırı üzerinden çalışan bir uygulamadır.

Npm Kurulumu

Npm için öncelikle olarak nodejs’i kurmalısınız. Bunun için nodejs sitesinden indirme işlemini yapabilirsiniz.

Nodejs yüklendiğini kontrol etmek için :

$ node -v

➡ v12.18.2 gibi bir çıktı elde etmeniz gerekiyor.Böylelikle sürüm kontrolünü de yapmış olursunuz.

Node yüklediğinizde npm de otomatik olarak yüklenmiştir.

$ npm -v

➡ 6.14.5 gibi bir çıktı elde etmeniz gerekiyor.Node.js de olduğu gibi npmde de güncel sürüm kontolünü de yapmış olursunuz.

npm Nasıl Çalışır?

Node ve npm’i kurduktan sonra projeyi kurmaya başlayabiliriz.

npm init

Bu komut ile projenin package.json dosyası ve ve boş bir node_modules klasörünü oluşacaktır.Proje hakkında bize sorular gelecektir. Soruları tek tek cevaplayabilir ya da enter yapıp daha sonra dosyayı açıpta yazabilirsiniz.

npm init-y

yazarsanız eğer tüm soruları otomatik olarak geçecektir.

node_modules

Ne zaman bir paket indirseniz, bu paketin kaynak kodu node_modules klasörünün içine yüklenecek.

package.json

Paketleri kullanmak için projenizin package.json adlı proje hakkında bilgileri içeren bir dosyayı içermesi gerekmektedir.Package.json aşağıdaki sırayla bazı detaylarını gösterir:

  • Projenin adı
  • Giriş sürümü
  • Açıklama
  • Giriş noktası
  • Test komutları
  • Git deposu
  • Anahtar kelimeler
  • Lisans
  • Bağımlılıklar
  • devBağımlılıkları

Buradaki dependencies için uygulamanızın doğru şekilde çalışması için, çalıştırması gereken paketlerin listesidir. Yeni bir paket indirdiğinizde otomatik olarak bu paketin kaynağı node_modules dizinine yerleştirilecek ve bu paketin adı ve sürümü, package.json dosyanızdaki dependencies kısmına eklenecektir.

npm Paketi Yüklemek

  • Paket yükleme işlemi için aşağıdaki gibi paket ismini yazdığımızda proje dosyamıza bir dependency olarak eklenecektir.
npm install

Eğer paketimi devDependencies kısmına koymak istiyorum derseniz de,

npm install paketinismi — save-dev

bu şekilde indirmeniz yeterli.

! Dependencies ve devDependencies paketlerini takip etmenin bu kadar önemli olmasının nedeni dependencye eklenince projenin canlı ortamda çalışması için bu pakete ihtiyaç duyulduğunu gösterir. devDependenciese eklenmesi ise sadece proje geliştirme süreçlerinde bu pakete ihtiyaç duymasıdır.

  • Paketi silmek ve güncellemek istiyorsak aşağıdaki komutları kullanabiliriz.
npm uninstall 
➡️ paketi siler.
npm update
➡️ paketi günceller.
  • Yüklü paketleri listelemek için
npm list
  • Projede yüklü olan paketlerin durumlarını öğrenmek için:
npm outdated

Diğer package managerları : yarn, bower

Bu yazımda size node.js nedir, avantajları,kurulumu ve npm nedir,nasıl çalışır ve paket yükleme komutları hakkında temel bilgileri aktarmaya çalıştım.

Umarım faydalı olmuştur.

Kaynak:

npm : https://www.npmjs.com/

node.js: https://nodejs.org/en/about/

--

--