NodeJS Modül Oluşturmak ve Modül Kullanımı

NodeJS yapısı gereği modüler bir yapıda olduğunu NodeJS Nedir konulu yazımda sizlere söylemiştim ve ilk modülümüzün kullanımını da NodeJS Web Sunucusu Oluşturmak adımlarında yapmıştık. Şimdi modül kavramını biraz daha inceleyelim ve NodeJS modül oluşturmak nasıl yapılır ona bir bakalım.

Nesne tabanlı programlamanın temellerinden dolayı bir nesneyle bağlantılı tüm fonksiyon ve değişkenleri o nesneye ait dosyalarda saklamaktayız. İşte bu yapıyı korumak ve geliştirmek amacıyla NodeJS modüler bir yapıya sahiptir. Modül adı ile bağlantılı fonksiyonlar modül dosyasının içerisinde tanımlı olarak yer almaktadır. Biz de paket yöneticisi ile yeni paketleri indirebilir ve kendi paketlerimizi oluşturabiliriz. Siz bir nevi bu modülleri paket ya da kütüphane olarak düşünebilirsiniz.

NodeJS Modül Oluşturmak Adımları

Takdir edersiniz ki oluşturacağımız modül dosyaları da birer Javascript dosyasıdır. Ben matematik adında bir Javascript dosyası oluşturdum ve içerisinde bazı matematik işlemlerini yapacağım kodları ekliyorum. Ekledikten sonra bu Javascript dosyasının bir modül olduğunu da sisteme belirtmek için dosyanın en altına sihirli bir satır yazıyorum. Bu satırla belirtmiş olduğum dosyayı bir modülmüş gibi dışarı aktar demiş oluyorum.

Matematik Javascript Dosyasına Ait Kodlar

var matematik ={
    toplama:function(sayi1,sayi2){
        console.log("Toplam "+ (sayi1+sayi2))
    },
    cikartma:function(sayi1,sayi1){
        console.log("Çıkartma "+(sayi1-sayi2))
    },
    carpma:function(sayi1,sayi2){
        console.log("Çarpma "+(sayi1*sayi2))
    }
};

module.exports = matematik

Modüllerimizi require sihirli kelimesi ile kodlarımızın içine dahil ediyorduk. Yine aynı şekilde bir yol izleyeceğiz ancak bu sefer modülümüzün adını vermek yeterli olmayacaktır. Modülümüzün adıyla beraber dosya yolunu da require ile belirtmemiz gerekiyor.

Güncel test.js İçeriği:

var httpModulu = require('http')
var url = require('url');
var matematik = require('./matematik.js');

httpModulu.createServer(function(request,response){
    var queryData = url.parse(request.url, true).query;
    if(queryData.isim){
        response.writeHead(200, {"Content-Type": "text/plain"});
        response.end('Merhaba, ben '+queryData.isim+' !')
        matematik.carpma(9,9);
    }
    else{
        response.writeHead(401, {"Content-Type": "text/plain"});
        response.end("Ad bilgisi girilmedi")
    }
}).listen(8081)

Kodlarımı yukarıdaki gibi güncellediğimde web siteyi her açtığımda yani her isteğimde 9 ile 9’u çarpıp aşağıdaki kısma benim sonucumu sistem yazdıracaktır.

KAYNAK

Son Yazılar

2 Yeni Dolandırıcılık Sistemi ve iCloud Kilidi Nedir ?

Günümüz şartlarında neredeyse her Apple ürünü iCloud Etkinleştirme kilidi özelliğine sahiptir. Bu kilit bir çok… Daha fazla oku

1 gün önce

iCloud Öncesi Kullanılan Şu Anda Unutulanlar Apple Servisleri

Apple sattığı cihazlardan para kazandığı kadar servisleri ile de para kazanan bir firma olmuştur. Son… Daha fazla oku

2 gün önce

Elmadan Haberler 3 – iPhone SE 4 İptal Edildi – Üretim Vietnam’da

Elmadan haberler 3 içerisindeki gündem şu şekildedir: Apple TV Android Akıllı Cep Telefonu ve Tabletlere… Daha fazla oku

3 gün önce

iPhone Güncelleme Sonrası Pil Sağlığı Neden Düşer ?

iPhone Güncelleme sonrası pil sağlığı neden düşer son derece fazla aldığım diğer bir sorudur. Bu… Daha fazla oku

6 gün önce

iPhone iOS 16.2 İpuçları – Programsız Video İndirme ve Dahası

Bilinçli iPhone Kullanıcısı video serisi kapsamında iPhone iOS 16.2 ipuçları bu yazıda ele alacağım bir… Daha fazla oku

1 hafta önce

Face ID vs Touch ID ? Hangisi Daha Güvenilir Hangisi Daha Hızlı ?

iPhone modellerinde güvenlik için Touch ID teknolojisini de Face ID teknolojisini de kullandık. iPhone SE… Daha fazla oku

2 hafta önce

Bu web site kullanıcı deneyimini arttırmak amacı ile çerezleri kullanmaktadır