Node.js Nedir?
Node.js, JavaScript çalıştırmak için kullanılan bir platformdur. İlk olarak 2009 yılında Ryan Dahl tarafından geliştirilmiştir. Açık kaynaklı ve platformlar arası bir çalıştırma ortamıdır.
NodeJS bir programlama dili değildir. Node.js, JavaScript’in asenkron yapısını kullanarak hızlı ve verimli bir şekilde çalışır. Node.js, V8 JavaScript motoru üzerinde çalıştığı için, JavaScript kodunu doğrudan makine koduna derler ve bu da hızlı bir performans sağlar.
Node.js, web sunucusu tarafında çalışarak, sunucu taraflı web uygulamalarının geliştirilmesine olanak tanır. Bugün Node.js’yi, Paypal, Uber, Netflix ve Walmart gibi büyük şirketler tercih ediyor ve geliştirme süreçlerinde kullanıyor.
Node.js Nasıl Kurulur?
Node.js kurulumu oldukça basittir. Windows, macOS ve Linux’a kurmanın en uygun yöntemi şöyledir:
- Node.js web sitesinden Node.js’yi indirin.
- İndirilen dosyayı açın. Açılan kurulum penceresinde “İleri” butonuna basın.
- Hedef klasörü seçin ve “İleri” seçeneğine tıklayın.
- Yüklenecek özellikleri seçin.
- “Gerekli araçları otomatik olarak kur” seçeneğini işaretleyin. “İleri’” ve ardından “Yükle” seçeneğine tıklayın.
NPM Nedir?
NPM yani Node Paket Yöneticisi, JavaScript ve Node.js kullanıcılarının kendi modüllerini diğer kişilerle paylaşmasına olanak sağlayan bir paket yöneticisidir. Yani NPM, Node.js ekosisteminin büyük bir parçasıdır.
NPM, uygulama geliştirme sürecini daha hızlı ve verimli bir hale getirir. İçerisinde indirilebilir oldukça fazla sayıda paketi bulundurur. NPM’nin kullanımı ücretsizdir ve isteyen tüm developer’lar burada katkıda bulunur. Bu paketlerin tümü resmi web sitesinde bulunur. NPM’yi kullanmak için Node.js kurmak gerekir çünkü NPM, Node.js içerisinde varsayılan bir özellik olarak yer alır.
Node.js’nin Avantajları
- Öğrenmesi Kolay – Web geliştirmeye yeni başlayanlar için Node.js oldukça doğru bir tercihtir. Node.js’yi öğrenmek kolaydır. Ayrıca, çok sayıda öğretici belgesi de bulunur.
- Ölçeklenebilir – Node.js uygulamalar için geniş ölçeklenebilirlik sağlar. NodeJS, Chrome V8’in Google tarafından desteklenen motoru üzerine kurulmuştur. Bu sayede, yüksek verimlilikle çok sayıda eş zamanlı bağlantıyı yönetebilir.
- Hız – Node.js hızlı bir çalışma zamanı ortamıdır.
- JavaScript Kullanımı – Node.js, JavaScript üzerinde çalıştığı için, sunucu ve istemci taraflı kodların aynı dili kullanmasını kolaylaşır.
- Paketler – Node.js işi basitleştirebilecek çok sayıda açık kaynaklı paket bulundurur.
- Güçlü Backend – Node.js, C ve C++ ile yazılmıştır. Bu da Node.js’nin hızlı olmasını sağlar ve ağ desteği gibi özellikler ekler.
- Çoklu Platform – Platformlar arası destek sağlar. Node.js ile SaaS web siteleri, masaüstü uygulamaları ve mobil uygulamalar oluşturulur.
- Gerçek zamanlı Web Uygulamaları – Günümüzde kullanıcılar birbirleriyle gerçek zamanlı olarak etkileşim kurmak istiyor. Node.js kullanıcıların web sitesi ve diğer kullanıcılar ile iletişim kurmasını sağlar.
- Özgürlük – Node.js developer’ların kendi yöntemlerini uygulayabilmesi için daha fazla alan ve özgürlük sunar. Node.js ile her şey sıfırdan oluşturabilir ve her ayrıntı özelleştirilebilir.
- Aktif Topluluk – Node.js geliştirici topluluğu, Node.js’nin sürekli olarak iyileştirilmesine katkıda bulunur.
Node.js’nin Dezavantajları
Yukarıda listelenen tüm avantajlara rağmen, Node.js’nin dezavantajları da vardır. İşte Node.js’in dezavantajlarından bazıları:
- İşlem Yapıları – Node.js’in callback fonksiyonları kullanarak çalışması, bazı geliştiriciler tarafından zor bulabilir.
- Bellek Yönetimi – Node.js, bellek yönetimi için otomatik çöp toplama kullanır. Ancak, bu bazı durumlarda bellek sızıntılarına neden olabilir.
- Sınırlı CPU Kullanımı – Node.js, tek bir iş parçacığı üzerinde çalıştığı için, çok yoğun CPU işlemleri için uygun değildir.
- Kararsız API – Node.js’nin en büyük dezavantajlarından biri tutarlı olmamasıdır. Node.js’nin API’si sık sık değişir ve değişiklikler genellikle geriye dönük olarak uyumsuzdur. Bu durumda developer’lar, Node.js API’sini en son sürümüyle uyumlu hale getirmek için mevcut kod tabanında değişiklikler yapmak zorunda kalır.
Node.js projesi nasıl oluşturulur?
Node.js projesi oluşturmak için aşağıdaki adımları izleyebilirsiniz:
- Öncelikle, bilgisayarınızda Node.js’yi yüklemeniz gerekmektedir. Bunun için nodejs.org adresini ziyaret ederek son sürümü indirebilirsiniz.
2. Node.js’yi yükledikten sonra, komut isteminde (Command Prompt veya Terminal) aşağıdaki komutu yazarak bir proje klasörü oluşturabilirsiniz:
mkdir [proje_adi]
3. Proje klasörü oluştuktan sonra, aşağıdaki komut ile projenize bir “package.json” dosyası oluşturabilirsiniz. Bu dosya projenizle ilgili bilgileri içerir ve diğer kullanıcıların projenizi kurabilmesi için gereklidir.
npm init
4.”package.json” dosyası oluştuktan sonra, projeniz için gerekli olan eklentileri (dependencies) yükleyebilirsiniz. Örneğin, Express.js kütüphanesini yüklemek için aşağıdaki komutu yazabilirsiniz:
npm install express --save
5. Eklentileri yükledikten sonra, projeniz için bir “index.js” dosyası oluşturarak Node.js kodlarınızı buraya yazabilirsiniz. Örneğin, aşağıdaki kod ile bir web sunucusu oluşturabilirsiniz:
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Merhaba Dünya!');
});
app.listen(3000, () => {
console.log('Sunucu 3000 portunda çalışıyor...'); /*localhost:3000*/
});
6. “index.js” dosyasını yazdıktan sonra, aşağıdaki komut ile projenizi çalıştırabilirsiniz:
node index.js
7. Projeniz başarıyla çalıştığında, tarayıcınızda “http://localhost:3000” adresine giderek sunucunuzu test edebilirsiniz.
node.js proje oluşturma işlemi bu şekildedir.