Bu makalemizde, JavaScript'de Promises/A+ yöntemi ile asenkron yapıdan kaynaklı iç içe geçmiş ve karmakarışık olmuş kodların daha düzgün ve sade bir şekilde yazılabilmesine imkan sağlayan Bluebird kütüphanesini Node.JS ile kullanmamızı mümkün kılan NPM paketini ve kullanımını inceleyeceğiz.

Bu makaleyi, Object Oriented JavaScript kategorisindeki Promises/A+ ve Bluebird Kütüphanesi isimli makaleyi okumuş ve bu imkana Node.JS'de de kavuşmak isteyenler için hazırladım. Yani Bluebird kütüphanesinin kullanım örneklerine bu makalede tekrar yer vermiyorum. Burada sadece, Node tarafında bu kütüphaneyi kullanmamıza imkan sağlayan npm paketinin indirilmesi ve kullanılmaya başlanmasını anlatıyorum.

Node.JS ile Promise yöntemi üzerinden kod yazabilmemiz için kullanacağımız modülün ismi "bluebird".




Bu modülü kullanmak için, ilk olarak masaüstüne "BluebirdTest" isimli bir klasör açıp içerisine "package.json" dosyasını aşağıdaki gibi hazırlayalım.

{
    "name": "BluebirdTest",
    "version": "1.0.0",
    "dependencies": {
        "bluebird": "2.1.3"
    }
}

Ardından, asıl kodumuzu içeren "program.js" dosyamızı aşağıdaki gibi hazırlayalım.

"use strict";

var promise = require("bluebird");

function asyncFunction() {

    var deferred = promise.pending();

    setTimeout(function () {
        deferred.fulfill("Ali");
    }, 0);

    return deferred.promise;
}

// Asenkron fonksiyonu kullanıyoruz
asyncFunction()
    .then(function (result) {
        console.log(result);
    });

Kodun açıklamasını yapmıyorum. Yukarıda linkini verdiğim adresteki makalede anlatılanlardan pek bir farkı yok. Sadece kullanım öncesinde "require" fonksiyonu ile paketimizi yüklüyoruz.

Sıra geldi uygulamayı çalıştırmaya. İlk olarak gerekli modülü indirmek için terminal (Linux veya Mac OS) veya command prompt (Windows) penceresinden "BluebirdTest" isimli klasöre girip aşağıdaki komutu çalıştıralım.

npm install

Böylece Bluebird için gerekli olan dosyalar inmiş olacak. Ardından aşağıdaki komutla uygulamamızı ayağa kaldıralım.

node program.js

Eğer her şey yolunda gittiyse, aşağıdaki gibi bir ekranla karşılaşmış olman gerekiyor.



İşte hepsi bu kadar. Artık Node üzerinde de Promises yöntemini kullanabiliriz. Makale zaten özet mahiyetinde olduğu için tekrardan öğrendiklerimizi özetlemiyorum.


Yorum Gönder

 
Top