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.