Junior — Middle
Explica scopul și modul de funcționare al delegaților în contextul programării în C#.
sobes.tech AI
Răspuns de la AI
Delegatii în C# sunt tipuri care reprezintă referințe la metode cu o semnătură specifică. Ele permit apelarea metodelor indirect, transmiterea lor ca parametri și implementarea callback-urilor.
Puncte cheie:
- Un delegat definește semnătura unei metode (tipurile parametrilor și valoarea de returnare).
- Se poate atribui delegatului orice metodă cu o semnătură compatibilă.
- Permite implementarea evenimentelor și a pattern-ului observator.
Exemplu:
public delegate void Notify(string message);
public class Process
{
public Notify OnCompleted;
public void Start()
{
// ... lucru
OnCompleted?.Invoke("Proces finalizat");
}
}
Aici, delegatul Notify este folosit pentru a notifica finalizarea procesului.