CodeBlanks Logo Icon CodeBlanks

Pipeline

stream.pipeline ile hata güvenli zincir öğrenirsin.

Pipeline nedir?

Bir pipeline, birden fazla stream'i sırayla birbirine bağlar: kaynak (src), dönüştürücü (transform) ve hedef (sink) zinciri. Veri kaynaktan çıkar, transform'dan geçer ve hedefe yazılır. stream.pipeline bu zinciri kurar ve hata yönetimini tek elden yapar.

Eski src.pipe(transform).pipe(sink) deseni hataları sessizce yutardı; stream.pipeline ise herhangi bir aşamada hata olursa tüm zinciri temizler ve callback'e bildirir. Bir runPipeline(stages) fonksiyonu zincirin iskeletini modeller: ['src', 'transform', 'sink'] dizisini ' -> ' ile birleştirir. Çıktı: src -> transform -> sink. Bu, zincirin görsel bir özetidir; gerçek stream'lerde veri akar, burada isimler akar.

Zincir kurma

Pipeline'ın iskeleti, aşamaların sırasıyla kurulur. Kaynak veriyi üretir, transform işler, sink yazar. Bu sıra, runPipeline(['src', 'transform', 'sink']) çağrısında bir dize olarak görünür.

Örnek: runPipeline(['src', 'transform', 'sink']) 'src -> transform -> sink' döndürür. Array.prototype.join metodu, bir dizinin tüm öğelerini verilen ayraçla birleştirir. ['a', 'b'].join(' -> ') 'a -> b' üretir. Bu basit model, zincirin yapısını gösterir; gerçek stream.pipeline'da her aşama bir stream nesnesidir ve veri akar. Adları birleştirmek, zincirin sırasını görselleştirmenin en kestirme yoludur.

Uygulama Pipeline fonksiyonu yaz

function runPipeline(stages) yaz. return stages.join(' -> ') ile döndür. console.log(runPipeline(['src', 'transform', 'sink'])) ile yazdır.

Başlangıç kodu

index.js
// runPipeline fonksiyonu yaz
// stages dizisini ' -> ' ile birleştirip döndürsün
// ['src', 'transform', 'sink'] çağrısını yazdır
// buraya yaz

Örnek çözüm

index.js
function runPipeline(stages) {
  return stages.join(' -> ');
}
console.log(runPipeline(['src', 'transform', 'sink']));

Beklenen çıktı

src -> transform -> sink

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 stream.pipeline hangi avantajı sunar?

index.js
stream.pipeline(src, transform, sink, callback)
  • Zincir hata olursa temizlenir ve bildirilir Doğru cevap
  • Hata sessizce yutulur
  • Yalnızca iki stream bağlar
  • Hedef yok

Açıklama: stream.pipeline hata durumunda zinciri temizler ve callback'e bildirir.

2 Parçayı rolüne eşle

Kavram Anlamı
src Veri üretir
transform Veriyi işler
sink Veriyi yazar
.join(' -> ') Aşamaları birleştirir

3 join çağrısını tamamla

Soru
return stages.____(' -> ');
Cevap
return stages.join(' -> ');

Açıklama: join diziyi dizeye birleştirir.

Uzman bölümündeki tüm dersler