Aslında NodeJS nedir?
NodeJS, API'ler (Gelişmiş Programlama Arayüzleri) adı verilen arka uç hizmetleri geliştirmek ve yürütmek için kullanılan açık kaynaklı bir JavaScript platformudur. Tarayıcı üzerinde çalışan web uygulamaları ve mobil uygulamalar gibi istemci uygulamalarını çalıştıran hizmetlerdir. NodeJS önemlidir, çünkü bu istemci uygulamaları, kullanıcıların görmesi ve etkileşimde bulunması için yalnızca bir yüzeydir. Buna ek olarak, verilerin depolanması, e-posta gönderilmesi veya bildirimlerin iletilmesi için sunucudaki veya buluttaki bazı servislerle konuşmaları gerekir. Bu, kullanıcıların JavaScript'te sunucu tabanlı uygulamalar oluşturmasına ve istemci uygulamalarını güçlendirmek için kullanılabilecek gerçek zamanlı arka uç hizmetleri üretmesine olanak tanıyan NodeJS'nin devreye girdiği yerdir.
Oldukça ölçeklenebilir ve süper hızlı olan NodeJS, geliştirme için harika bir seçimdir ve bu nedenle bugün basit bir NodeJS uygulamasının nasıl yapılacağına bakacağız.
Adım 1: NodeJS'yi Yükleme
Geliştirme aşamasına geçmeden önce, Linux tabanlı masaüstlerimize NodeJS'nin nasıl kurulacağını görelim. NodeJS'yi Linux tabanlı bir bilgisayara kurmanın aslında birden çok yolu vardır. Ancak, NodeJS'yi kurmanın yalnızca iki yöntemine bakacağız.
Adım 1(a): NVM kullanarak NodeJS kurulumu
Bu yöntemde kullanacağımız Düğüm Sürüm Yöneticisi (NVM) NodeJS'yi yüklemek için. Bunu kullanmanın büyük bir yararı, NodeJS'yi kullanmak için herhangi bir izin sorununun olmamasıdır.
Her şeyden önce, aşağıdaki komutla yapılabilecek nvm'yi kurmamız gerekiyor:
$ wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/kurulum.sh | bash
Bu komut, yol profilinize nvm ekler ve dizindeki tüm nvm verilerini çıkarır ~/. nvm
nvm'nin doğru kurulup kurulmadığını kontrol etmek için terminali yeniden başlatın ve çalıştırın:
$ komut -v nvm
Çıktı olarak nvm görüyorsanız, başarıyla yüklenmiştir.
Şimdi temel olarak NodeJS kitaplıklarının bir ekosistemi olan NodeJS ve npm'yi yükleyeceğiz. Bunu yapmak için, NodeJS'nin en son sürümünü yükleyecek olan aşağıdaki komutu çalıştırmanız yeterlidir:
$ nvm kurulum düğümüAyrıca, yüklemek istediğiniz herhangi bir belirli NodeJS sürümünü de yükleyebilirsiniz. Bu eğitim için NodeJS'nin 12 sürümünü yükleyeceğiz.
$ nvm v12'yi yükleyin.16.1
Kurulduktan sonra, aşağıdaki komutları çalıştırarak NodeJS ve npm kurulu sürümlerinizi kontrol edebilirsiniz:
$ düğümü -v$ npm -v
Adım 1(b): Ubuntu resmi deposunu kullanarak NodeJS kurulumu
NodeJS'yi bu şekilde kurmanın büyük bir avantajı, Ubuntu'nun resmi deposunda kararlı bir NodeJS sürümüne sahip olmasıdır.
Öncelikle sistemimizin apt önbelleğini ve paketlerini en son sürümlere güncellemek için aşağıdaki komut çalıştırılacaktır, böylece kurulum sırasında herhangi bir sorun çıkmaz:
$ sudo apt-get güncellemesiArdından, aşağıdaki komutla NodeJS'yi yükleyeceğiz:
$ sudo apt kurulum düğümüKurulduktan sonra, aşağıdaki komutu çalıştırarak NodeJS kurulu sürümünüzü kontrol edebilirsiniz:
$ düğümü -v
Bu yöntemde ayrıca NodeJS kitaplıklarının ekosistemi olan npm'yi de kurmamız gerekiyor. Bu, terminale aşağıdaki komutu girerek yapılabilir:
$ sudo apt kurulum npmBenzer şekilde, aşağıdaki komutu çalıştırarak kurulu npm sürümünüzü kontrol edebilirsiniz:
$ npm -v
Adım 2: Bir NodeJS Uygulamasını Kodlamak
Bu eğitim için, 8080 numaralı bağlantı noktasındaki istemciyi dinleyecek ve istemciye yanıt olarak Hello World çıktısını alacak basit bir HTTP Sunucusu oluşturacağız. Tam kod aşağıdadır:
http = gerektirir('http')sunucu = http.createServer(işlev(istek, yanıt)
tepki.yaz('Merhaba Dünya')
tepki.son()
)
sunucu.dinle(8080)
konsol.günlük ("Sunucu Çalışıyor")
Şimdi burada gerçekte ne olduğunu anlamak için her bir kod satırına bakalım.
Kod Açıklaması:
Node JS'de bazı yerleşik modüller mevcuttur. Bunlar, NodeJS'de zaten tanımlanmış olan ve uygulamalarımızda belirli işlevler sağlayan işlevlerdir. Bu modüller kullanılarak içe aktarılabilir gerektirmek anahtar kelime.
http = gerektirir('http')Kodumuzun ilk satırında, NodeJS modülünün yerleşik HTTP'sini içe aktarıyoruz. HTTP modülü burada, uygulamamızda belirli bir bağlantı noktasında HTTP isteklerini dinleyebilecek bir sunucu oluşturabilmemiz için kullanılır.
sunucu = http.createServer(işlev(istek, yanıt)Burada, adı verilen HTTP modülünün bir yöntemini kullanıyoruz sunucu oluştur adından da anlaşılacağı gibi, bir sunucu örneği oluşturur. Burada, iki parametre alan bir fonksiyon geçiriyoruz - bir istek nesnesi ve bir yanıt nesnesi. Artık sunucumuza her istek yapıldığında bu fonksiyon çağrılacak. Yanıt nesnesi, yapılan istekle ilgili ayrıntılarla birlikte gelir ve yanıt nesnesi, istemciye yanıt göndermek için kullanabileceğimiz bir şeydir.
tepki.yaz('Merhaba Dünya')
tepki.son()
Burada, yanıt.write istemciye bir yanıt yazmak için kullanılır. Tarayıcıda işler bu şekilde yazdırılabilir. Bu durumda, bu yazdırmamıza izin verecek Selam Dünya tarayıcıda. yanıt.end(), tarayıcının isteğin sona erdiğini bilmesini sağlar ve yanıtı tarayıcıya gönderir.
sunucu.dinle(8080)konsol.günlük ("Sunucu Çalışıyor")
Sunucu.dinleme işlevi burada sunucumuz tarafından 8080 numaralı bağlantı noktasındaki istemciyi dinlemek için kullanılır. Mevcut olan herhangi bir bağlantı noktasının burada kullanılabileceğini unutmamak önemlidir. Son satır konsolu.log, terminalde herhangi bir şey yazdırmak için kullanılır. Bu durumda yazdırıyoruz Sunucu Çalışıyor sunucunun başladığını bilmemiz için.
Adım 3: NodeJS Uygulamamızı Çalıştırma ve Test Etme
Artık kodumuzu yazdığımıza ve içinde ne olduğunu anladığımıza göre, şimdi çalıştıralım ve çalışıp çalışmadığını test edelim. Bunu yapmak için, yukarıdaki NodeJS kodunu içeren dosyanızı kaydettiğiniz dizini açın ve bununla birlikte terminali de açın. Bir NodeJS dosyasını çalıştırmak için terminalde aşağıdaki komutu yazmanız yeterlidir:
$ düğüm dosya adı.jsburadaki dosya adı, dosyanızın adını ifade eder. Benim durumumda kodumu örnek adlı bir dosyada sakladım.js. Aşağıya bakınız:
$ düğüm örneği.js
Şimdi sunucumuz çalışıyor gibi görünüyor. Şimdi yanıtımızın müşteriye gönderilip gönderilmediğini kontrol edelim. Bunu yapmak için tarayıcınızı açın ve localhost: port yazın. Benim durumumda şu komutu çalıştıracağım: localhost:8080. Daha iyi anlamak için aşağıdaki resme bakın:
Çıktımızı açıkça görebiliriz Selam Dünya sayfada görüntüleniyor. Voila, basit bir NodeJS Sunucusu oluşturmayı başardık.
Alternatifleri yerine neden NodeJS kullanmalı??
Günümüz dünyasında JavaScript, web geliştirmenin çehresini tamamen değiştirdi. Bu, NodeJS'nin arka uç geliştirme için popüler bir seçim haline gelmesine yol açtı. JavaScript'i çekirdek olarak kullanmanın yanı sıra, NodeJS oldukça hızlı, son derece esnek ve prototip oluşturma ve çevik geliştirme için harika. Ayrıca, açık kaynak kitaplıkları için mevcut en büyük ekosistem olan ekosistemi olarak NPM'yi (Düğüm Paket Yöneticisi) kullanarak, geliştiricilere talebini daha da artıran birden fazla araç ve modül sağlar. Tüm bu nedenler onu web geliştirme için mükemmel bir seçim haline getiriyor.