C# ile Delegate – Temsilci Kullanımı

0
Want create site? Find Free WordPress Themes and plugins.

Herkese merhaba bu yazıda sizelre C# ile Delegate nesnesinin kullanımını anlatacağım. Bu nesneler aracılığı ile programlarımızı daha verimli hale getireceğiz.

C# içerisindeki delegate nesnesi C ve C++ içerisindeki pointer fonksiyonları ile çok beznerdir. A delegate is a reference type variable that holds the reference to a method. The reference can be changed at runtime.

Dışarıdan metodları çağırmak ve metodlara cal back yapmak için kullanılan sınıftır. Bunu kullanabilmek için System.Delegate isim uzayının kütüphaneler alanına eklenmiş olması gerekmektedir.

Delegate Nesnelerini Tanımlama

Delegate tanımlama bir metodu bir referansa bağlama anlamına gelir yani bir delegate ir metodu temsil eder.  Yani metodu çağırmak için bu nesnelerin imzası kullanılır diyebiliriz. Delegate nesnesini çağırdığımızda referansı olduğu metod çalışır.

Aşağıda örnek bir delegate nesnesi tanımlanmıştır.


Yukarıda gördüğümüz üzere int olarak tanımlanan delegate nesnemizin içerisine bir string ifade gönderiyoruz. Ve delegate nesnemizde bize geri int değer döndürüyor.

O zaman aşağıdaki şekildeki gibi delegate nesnelerimizi tanımlıyoruz diyebiliriz.

Delegate nasıl başlatılır ?

Delegate nesnesi başlatılmadan önce, new anahtar kelimesi ile tanımlanmış olmalıdır ve birlikte çalışacağı fonksiyon parçacığı ile ilişkilendirilmelidir. Bir delegate nesnesi oluşturulurken, bundan sonra oluşturulan değişkenler yeni oluşturulacak olan fonksiyona giderler, fakat fonksiyonsuz bir şekilde geçerler. iraz karışık oldu değilmi ama aşağıdaki örneklere bakarak daha iyi anlayalım. Aşağıda sadece fonksiyonu oluşturduk ve degerleri gönderdik.


Aşağıdaki örnekte ise delegate nesnesini tanımlamayı oluşturmayı ve çalıştırmayı görelim. Çalışan delegate nesnesinin içerisine değişken gönderelim ve bize geri değer döndürsün. İnteger değer gönderelim ve geriye integer değer döndürsün.

Yukarıdaki programı çalıştırdığımızda programın çıktısı aşağıdaki gibi olacaktır.

Delegate nesnesini çoklama işlemi

Delegate nesneleri + işareti ile birleştirilebilir. Birleştirilmiş olan delegate nesnesi çağrılan fonksiyonları birleştirilmiş şekilde çağırır. Sadece aynı türden olan delegate nesneleri birleştirilebir. Yani int ile int string ile string bool ile bool vs. delegate neslneleri birleştirilebilir. – işareti ise birleştirilmiş olan delegate nesnesinden bileşen çıkarmak ayrıştırmak için kullanılır.

Bazen yazılım içerisindeki isteme işlemlerinde çoklama veya azlama işlemleri kullanılabilir.Buna terimsel olarak multicasing denir. Aşağıda buna bir örnek yapalım.


Yukarıdaki programın çıktısı aşağıdaki gibi olacaktır. İlk olarak ekleme işlemi yapıldı. sonuc olarak 15 oldu. Daha sonra 15 sayısını 5 ile çarptık ve ardından 75 sayısını elde ettik.

Delegate Kullanım Örneği

Aşağıda bir tane daha delegate kullanım örneği yapalım.

Aşağıdaki metodların kullanımı inceleyip öğrenelim ve yazımızı tamamlayalım arkadaşlar…


Yukarıdaki programı çalıştırınca programın çıktısı aşağıdaki gibi olacaktır.

Bu şekilde delegate tanımlamış başlatmış ve çalıştırmış olduk. Çalıştırılan bu delegate nesnesi ile iki farklı fonksiyonu çağırıp kullanmış olduk.

Delegate nesnemizi programımızı hızlandırmak ve aynı fonksiyonu aynı anda daha hızlı bir şekilde çağırıp kullanmış olduk.

 

Bu yazımızda bu kadar — Takipte Kalın

Burak Hamdi TUFAN

İyi Çalışmalar

Did you find apk for android? You can find new Free Android Games and apps.
Share.

About Author

Ben Kocaeli üniversitesi Uçak Elektrik Elektronik Bölümü Okuyorum. Bununla Birlikte 9 Yıldır yazılımcılık Yapıyorum. 12 Farklı Dilde ve 6 Farklı Platformda Profesyonel Yazılımlar Geliştirebiliyorum. Yazılım Benim için Hobi Değil Yasaşm Tarzıdır. Bu işten Para Kazanmak Değil Zevk Almak İçin Yapıyorum. Bu yüzden yazılım dünyasından ayrılmak istemiyorum.

Leave A Reply