Node.js Başlangıç Rehberi: Sunucu Taraflı JavaScript Dünyasına Adım

Sunucu taraflı JavaScript dünyasının temel taşlarından biri olan Node.js başlangıç rehberi ile bu güçlü çalışma zamanı ortamına ilk adımlarınızı atın. Tarayıcı dışında JavaScript çalıştırma olanağı sunarak web geliştirme paradigmalarını kökten değiştiren Node.js, geniş ekosistemi, kullanım kolaylığı ve dikkat çekici performansıyla günümüz modern teknoloji.tclojilerinin vazgeçilmez bir parçası haline gelmiştir. Bu rehberde, Node.js’in nasıl kurulacağını, NPM paket yöneticisinin işlevlerini ve basit bir web sunucusunun nasıl hayata geçirileceğini adım adım keşfedeceğiz.
Node.js: JavaScript’i Tarayıcı Dışına Taşıyan Devrim
Node.js, geliştiricilere JavaScript’i bir web tarayıcısının kısıtlamaları olmaksızın, doğrudan sunucu tarafında çalıştırma yeteneği sunan, çok yönlü ve çapraz platform bir çalışma zamanı ortamıdır. Bu özellik, Node.js’i, JavaScript’in yalnızca istemci tarafında kullanılan bir dil olduğu algısını yıkarak, tam yığın (full-stack) geliştirme için bir kapı aralamıştır. REST API’ları oluşturmaktan, veri işlemeye, sistem yardımcı programlarına kadar geniş bir kullanım alanına sahiptir.
Node.js’in popülaritesinin arkasında, geliştiricilere tanıdık bir dil olan JavaScript ile hem ön yüz hem de arka yüz geliştirme imkanı sunması yatar. Bu durum, geliştirme sürecini hızlandırır ve öğrenme eğrisini düşürür. Ayrıca, Node.js’in sunduğu devasa paket ekosistemi (NPM aracılığıyla erişilebilir) ve asenkron, olay tabanlı mimarisi sayesinde yüksek performanslı ve ölçeklenebilir uygulamalar geliştirmek mümkün hale gelmiştir. Deno ve Bun gibi daha yeni çalışma zamanları ortaya çıkmış olsa da Node.js, sunucu taraflı JavaScript için endüstri standardı konumunu korumaktadır.
NVM ile Node.js ve NPM Kurulumu
Node.js’i kurmanın çeşitli yolları olsa da, en pratik ve önerilen yöntem bir sürüm yöneticisi kullanmaktır. Bu alanda en yaygın kullanılan araç NVM (Node Version Manager) olarak öne çıkar. NVM, birden fazla Node.js sürümünü kolayca kurmanıza, bunlar arasında geçiş yapmanıza ve proje bazında farklı sürümler kullanmanıza olanak tanır. Windows kullanıcıları için özel olarak tasarlanmış nvm-windows adında bir sürümü de mevcuttur.
NVM’i kurmak için genellikle bir komut satırı arayüzü (CLI) kullanılır. Aşağıdaki curl komutu, NVM’in Linux ve macOS sistemlerine kurulumunu sağlar:
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
NVM kurulduktan sonra, en güncel Node.js sürümünü yüklemek oldukça basittir. Yükleme işlemi tamamlandığında, istediğiniz Node.js sürümünü etkinleştirebilirsiniz. Örneğin, en son sürümü yüklemek ve etkinleştirmek için şu adımlar izlenir:
$ nvm install latest
$ nvm use 24.9.0 // Yüklenen en son sürüm numarasını buraya yazın
Bu komutlar ile Node.js’in en son sürümü sisteminize yüklenir ve kullanıma hazır hale gelir. Kurulumun başarılı olduğunu doğrulamak için terminalde Node.js ve NPM’in sürüm numaralarını kontrol edebilirsiniz:
$ node -v
v24.9.0
$ npm -v
11.6.0
NVM kullanımı, Node.js kurulumu sırasında ortaya çıkabilecek potansiyel izin sorunlarını da ortadan kaldırır. Node.js’i NVM aracılığıyla yüklediğinizde, Node paket yöneticisi (NPM) de otomatik olarak sisteminize kurulur. NPM, Node.js projelerinizin bağımlılıklarını yönetmek ve genel JavaScript paketlerini kurmak için vazgeçilmez bir araçtır.
Node.js ile Basit Bir Web Sunucusu Oluşturma ve Çalıştırma
Node.js’in temel yeteneklerini anlamak için basit bir web sunucusu oluşturmak harika bir başlangıç noktasıdır. Node.js’in kendi http modülü, bu türden bir sunucuyu kolayca kurmanıza olanak tanır. Aşağıdaki örnek kod, Node.js ana sayfasından alınmış ve minimal bir HTTP sunucusu oluşturmaktadır:
const http = require(‘node:http’);
const hostname = ‘127.0.0.1’;
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader(‘Content-Type’, ‘text/plain’);
res.end(‘Merhaba, Teknoloji Dergisi Okuyucusu!n’);
});
server.listen(port, hostname, () => {
console.log(`Sunucu http://${hostname}:${port}/ adresinde çalışıyor.`);
});
Bu kodu example.js adıyla bir dosyaya kaydedin. Ardından, dosyanın bulunduğu dizinde bir terminal açarak aşağıdaki komutu çalıştırın:
$ node example.js
Sunucu http://127.0.0.1:3000/ adresinde çalışıyor.
Sunucu başarıyla çalıştığında, tarayıcınızdan http://127.0.0.1:3000 adresine giderek basit bir karşılama mesajını görebilirsiniz. Sunucuyu durdurmak için terminalde Control-C tuş kombinasyonuna basmanız yeterlidir. Bu kod parçasını incelediğimizde, ilk olarak Node.js’in dahili http modülünü require(‘node:http’) ifadesiyle dahil ettiğimizi görürüz. Bu, CommonJS modül sisteminin bir örneğidir. http modülü, sunucu oluşturmak için gerekli olan createServer ve dinleme işlevi için listen gibi temel fonksiyonları sağlar.
createServer fonksiyonu, her gelen isteği (req) işleyecek ve bir yanıt (res) döndürecek bir geri çağırma fonksiyonu alır. Yanıtın durum kodu (res.statusCode = 200), içerik tipi (res.setHeader(‘Content-Type’, ‘text/plain’)) ve içeriği (res.end(‘…’)) burada belirlenir. Son olarak, server.listen metodu ile sunucumuz belirtilen IP adresi (hostname) ve port (port) üzerinden gelen bağlantıları dinlemeye başlar. Konsola yazılan mesaj, sunucunun sorunsuz çalıştığını bildirir.
Node.js Ekosistemi ve Gelişmiş Sunucu Yapıları
Node.js’in asıl gücü, basit bir web sunucusundan çok daha fazlasını yapabilme yeteneğinde yatar. Geniş ve aktif geliştirici topluluğu sayesinde, NVM gibi sürüm yöneticilerinin yanı sıra, NPM aracılığıyla milyonlarca modüle ve kütüphaneye erişilebilir. Bu modüller, veritabanı bağlantılarından dosya işlemlerine, kullanıcı doğrulamasından gerçek zamanlı iletişimlere kadar her türlü ihtiyacı karşılayacak çözümler sunar.
Daha gelişmiş uygulamalar için Express.js gibi popüler Node.js çatılarından faydalanmak, geliştirme sürecini önemli ölçüde hızlandırır ve esneklik sağlar. Express.js, daha karmaşık yönlendirme (routing), ara yazılım (middleware) yönetimi ve şablon motoru entegrasyonu gibi özelliklerle donatılmış, özellik açısından zengin ve yönetilebilir sunucular oluşturmak için standart haline gelmiştir. Ayrıca, Node.js’in cluster modülü gibi dahili modülleri kullanarak, sunucularınızı birden fazla CPU çekirdeğini kullanacak şekilde ölçeklendirebilir, böylece performansı ve eş zamanlı işlem kapasitesini artırabilirsiniz. Bu yetenekler, Node.js’i modern web mimarileri için ideal bir seçim haline getirir.
Node.js’in Geleceği ve Sürekli Gelişim
Node.js, ilk çıktığı günden bu yana sürekli bir gelişim içinde olmuştur. Geliştirici topluluğunun aktif katkıları ve düzenli güncellemeler sayesinde, performans iyileştirmeleri, güvenlik yamaları ve yeni özellikler eklenmeye devam etmektedir. Sunucu taraflı JavaScript’in öncüsü olarak, Node.js, modern web uygulamalarının, mikro hizmet mimarilerinin ve API tabanlı çözümlerin temelini oluşturmaya devam ediyor.
Günümüzde bulut tabanlı sistemler ve konteyner teknolojileriyle de mükemmel uyum sağlayan Node.js, esnek ve dinamik uygulama geliştirme süreçleri için biçilmiş kaftandır. Geliştiricilerin, mevcut becerileriyle yeni nesil sunucu uygulamaları oluşturmasına olanak tanıması, onun popülaritesini ve kritik önemini pekiştirmektedir. Node.js’i öğrenmek ve kullanmak, çağdaş web geliştirme dünyasında rekabetçi kalmak ve yenilikçi çözümler üretmek isteyen her geliştirici için değerli bir yatırımdır.
Sık Sorulan Sorular
İlgili Makaleler
- ›Nvidia, NeMo Switchyard ile Yapay Zeka Model Yönlendirme Yarışında
- ›Oracle, Veri Tabanı Güvenliğini Merkezileştiren Yeni Aracını Duyurdu
- ›Neocloud Operasyonları: Yapay Zeka Bulutunda Yönetim Farklılıkları
- ›DeepSeek V4 Fiyatları Neden Katlandı? Yeni Maliyet Yapısı ve Etkileri
- ›Databricks, Yerel Postgres Veritabanları ile Ajan Uygulamalarını Güçlendiriyor
