Fluent Interface ve Class nasıl geliştirilir?

10 Şubat 2017

Geçen günlerde LINQ: .NET Language-Integrated Query tarzı kütüphaneler nasıl yazılıyor diye düşünürken ve internette gezinirken VinKamat kullanıcısının 02 Temmuz 2009 tarihinde attığı aşağıdaki tweet’e denk geldim;

LINQ tarzı kodlara örnek olarak aşağıdaki koda bakabiliriz;

Yukarıdaki örnekte de görebileceğimiz gibi, OrderList değişkenindeki listeyi Where() methodu ile filtreliyoruz, OrderBy() methodu ile sıralıyoruz, Take() methodu ile sadece istediğimiz kadar kaydı alıp, Select() methodu ile geriye yeni bir dizi döndürüyoruz.

Biz de benzer şekilde çalışacak bir kod geliştirelim, bu örnekte yemek oluşturacak kodları yazacağız. Öncelikle aşağıdaki interface‘i projemize ekleyelim;

Bu interface‘de önemli nokta, tüm method‘ların kendi interface‘inin tipinde sonuç döndürmesi.

Böylece projeye aşağıdaki gibi bir class ekleyebiliriz;

Bu class‘ta önemli nokta, tüm method’ların this anahtar kelimesi ile kendi sınıfını geri döndürmesi. Böylece bu methodları bir zincir (chain) oluşturacak şekilde aşağıdaki gibi kullanabiliriz;

blog comments powered by Disqus

Emre Ozcan hakkında

Sistem Yöneticisi, Bilişim Teknoloji Takipçisi

#microsoft #VoIP

Kategoriler

İstatistik

Makale Adedi: 290

Creative Commons Lisansı