Sobes.tech
Junior — Middle

Explique el propósito y el funcionamiento de los delegados en el contexto de la programación en C#.

sobes.tech AI

Respuesta de la IA

Los delegados en C# son tipos que representan referencias a métodos con una firma específica. Permiten llamar a métodos de forma indirecta, pasarlos como parámetros y realizar llamadas de retorno.

Puntos clave:

  • Un delegado define la firma de un método (tipos de parámetros y valor de retorno).
  • Se puede asignar cualquier método con una firma compatible a un delegado.
  • Permiten implementar eventos y el patrón observador.

Ejemplo:

public delegate void Notify(string message);

public class Process
{
    public Notify OnCompleted;

    public void Start()
    {
        // ... trabajo
        OnCompleted?.Invoke("Proceso completado");
    }
}

Aquí, el delegado Notify se usa para notificar la finalización del proceso.