Custom stream
- Node.js kursu
- Uzman
- Ders 29/47
- 5 dk
Kendi stream sınıfını yazmayı öğrenirsin.
Custom stream nedir?
Node.js'te custom stream, yerleşik Readable, Writable veya Transform sınıflarını genişleterek yazdığınız stream'dir. _read, _write veya _transform metodlarını uygulayarak veri akışını özelleştirirsin.
Bir customStream(name) fonksiyonu bu iskeleti modeller: {name, _read, _write} özellikli bir nesne döndürür. _read ve _write boş fonksiyonlardır; gerçek bir custom stream'de bunları doldurursun. Bu derste iskeleti kuruyoruz; sonraki adımlarda gerçek Readable sınıfını genişletmeyi göreceğiz. new Readable({ read() {} }) seçeneği de benzer bir iskelet kurar; burada basit bir nesneyle başlıyoruz.
_read ve _write iskeleti
Bir custom stream'in iskeleti, _read ve _write metodlarını içerir. _read veri üretir, _write veri tüketir. customStream(name) fonksiyonu bu iki metodu boş fonksiyon olarak döndürür; gerçek bir custom stream'de bunları doldurursun.
Örnek: const stream = customStream('myStream') çağrısı {name: 'myStream', _read: function() {}, _write: function() {}} döndürür. typeof stream._read 'function' döner. Bu iskelet, custom stream'in yapısını gösterir; ileride class MyStream extends Readable { _read() {} } deseniyle bu yapıyı sınıf olarak kurarsın. Başlangıçta basit bir nesneyle çalışmak, sınıf sözdizimine geçmeden önce metot rollerini netleştirir.
Uygulama Custom stream iskeleti yaz
function customStream(name) yaz. return { name: name, _read: function() {}, _write: function() {} } ile döndür. const stream = customStream('myStream') tanımla. console.log(stream.name), console.log(typeof stream._read) ve console.log(typeof stream._write) yazdır.
Başlangıç kodu
// customStream fonksiyonu yaz
// {name, _read, _write} özellikli nesne döndürsün
// myStream ile çağır, ad ve metot türlerini yazdır
// buraya yazÖrnek çözüm
function customStream(name) {
return { name: name, _read: function() {}, _write: function() {} };
}
const stream = customStream('myStream');
console.log(stream.name);
console.log(typeof stream._read);
console.log(typeof stream._write);Beklenen çıktı
myStream function function
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Custom Readable stream hangi metodu uygular?
class MyReadable extends Readable {
_read() {}
}- _close
- _read Doğru cevap
- _open
- _start
Açıklama: Readable sınıfı _read metodunu uygular.
2 Parçayı rolüne eşle
| Kavram | Anlamı |
|---|---|
Readable |
Veri üretir |
Writable |
Veri yazar |
Transform |
Dönüştürür |
_read |
Üretim metodu |
3 Nesne özelliğini tamamla
return { name: name, ____: function() {}, _write: function() {} };
return { name: name, _read: function() {}, _write: function() {} };
Açıklama: _read üretim metodudur.