Delegate adalah tipe yang merepresentasikan method, dan events dibangun di atasnya: dua fondasi untuk kode yang fleksibel seperti callback, handler, dan notifikasi antar objek. Section ini membahas keduanya dari dasar hingga pola publisher-subscriber yang aman dari kebocoran memori.
Pelajari delegate sebagai tipe yang merepresentasikan method sehingga method dapat disimpan ke variabel, dikirim, dan dipanggil lewat nama variabel.
Buka → # Action, Func, dan PredicateKenali tiga tipe delegate generik bawaan .NET: Action untuk method tanpa return, Func untuk method dengan return, dan Predicate untuk uji syarat.
Buka → # Multicast DelegateGunakan operator += dan -= untuk menumpuk banyak method dalam satu delegate sehingga satu pemanggilan menjalankan seluruh daftar secara berurutan.
Buka → # Anonymous MethodTulis delegate inline dengan keyword delegate tanpa mendeklarasikan method terpisah untuk logika kecil yang hanya dipakai satu kali.
Buka → # Lambda ExpressionPadatkan anonymous method menjadi lambda expression dengan operator => dan biarkan compiler menyimpulkan tipe parameternya.
Buka → # Event DasarPelajari keyword event yang membungkus delegate dengan aturan akses sehingga kode luar hanya dapat mendaftar dan melepas handler.
Buka → # Event Publisher dan SubscriberTerapkan pola publisher-subscriber: satu class menerbitkan event, modul lain berlangganan, dan publisher tidak perlu mengenal subscriber.
Buka → # EventHandlerIkuti konvensi .NET dengan EventHandler dan EventHandler<TEventArgs> beserta class EventArgs untuk membawa data event secara terstruktur.
Buka → # Custom Event AccessorsKendalikan perilaku pendaftaran handler dengan accessor add dan remove yang menulis sendiri backing field event.
Buka → # Event LifecycleIkuti empat tahap siklus hidup event, dari deklarasi, langganan, pemicuan, hingga pelepasan handler.
Buka → # Event Memory LeaksLihat bagaimana publisher memegang referensi subscriber dan cegah memory leak dengan unsubscribe lewat operator -= atau pola IDisposable.
Buka → # Delegates vs InterfacesBandingkan delegate dan interface sebagai dua cara menukar perilaku saat runtime, beserta panduan memilih di antara keduanya.
Buka →