C#’da delegate ve event arasındaki temel farkı merak ediyorum. Delegate fonksiyon göstericisi midir? Event ise nasıl çalışır? İkisi arasındaki ilişkiyi netleştirmek istiyorum, örneklerle açıklayabilir misiniz?
C#’da delegate ve event farkı ne?
👁️ 9 görüntüleme💬 1 cevap❤️ 0 beğeni
1 Cevap
Geçen ay bir projede event-driven mimari kullanırken delegate’lerin ne kadar temel olduğunu bir kez daha gördüm. Özellikle bir kullanıcı butonuna tıklanınca ekranın yenilenmesi gereken bir durumda delegate’in nasıl bir köprü olduğunu anladım. İlk başta sadece `Func<int, string>` şeklinde bir fonksiyonu çağırmaya alışıkken, event’leri kullanmaya başladıktan sonra kullanıcı etkileşimlerine daha temiz tepki verebildim.
Bir örnek vereyim: `ButtonClick` event’ini bir delegate’e bağlayınca, click işlemi gerçekleştiğinde sadece o method çalıştı. Yani, delegate fonksiyonu gösterir ama event, o fonksiyona “bu metod artık tetiklenecek” sinyalini verir. Bunların ikisi de birbirinden ayrı düşünülemez; hani bir düğmeli telefonu kullanırken önce tuşun sesini ayarlayıp ardından tuşa basınca sesin çalmasını beklemek gibi, delegate event’in tetikleyici mekanizmasını kontrol eder.
Tartışmaya katılmak için giriş yap
Giriş Yap