Sobes.tech
Junior

Asenkron kodla çalışma yöntemlerin nelerdir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Callbacks, Promises, async/await.

Callbacks: Asenkron işlemler tamamlandıktan sonra çağrılan, diğer fonksiyonlara argüman olarak geçirilen fonksiyonlar.

Promises: Callbacks ile karşılaştırıldığında daha kullanışlı bir asenkron yönetim yöntemi sağlayan nesneler. pending, fulfilled ve rejected durumlarına sahiptirler.

// Promise örneği
function asyncOperation() {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve('İşlem başarıyla tamamlandı!');
    }, 1000);
  });
}

asyncOperation()
  .then(result => console.log(result))
  .catch(error => console.error(error));

async/await: Promises üzerinde sözdizimi şekeridir, asenkron kodu daha senkron gibi gösterir ve okunabilirliğini artırır.

// async/await örneği
async function performAsyncOperation() {
  try {
    const result = await asyncOperation();
    console.log(result);
  } catch (error) {
    console.error(error);
  }
}

performAsyncOperation();

Yöntemlerin karşılaştırması:

Yöntem Okunabilirlik / Bakım Hata İşleme Akış Kontrolü
Callbacks Daha az okunabilir (Callback Hell) Zor Zor
Promises Geliştirilmiş Kullanışlı (.catch) Kullanışlı (.then, .catch)
async/await En iyi Kullanışlı (try...catch) Kullanışlı (await)

Modern Node.js uygulamalarında en çok tercih edilen yöntem async/await kullanımıdır çünkü okunabilirliği ve kullanışlılığı yüksektir. Promises, özellikle daha düşük seviyedeki uygulamalarda önemli bir araç olmaya devam eder. Callbacks ise eski kodlarda veya Node.js çekirdeğinde düşük seviyeli işlemler için kullanılır.