Olá, para que serve um delegate?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá, para que serve um delegate?
Oi Paulo, tudo bem? Um delegate é como um "ponteiro de uma função" ou uma "referência a um método". Imagine que você tenha um método chamado Ligar() e outro chamado Desligar(). Agora imagine que, em vez de invocar os métodos pelo nome, você queira usar uma variável delegate chamada meuDelegate, que pode apontar tanto para o método Ligar() quanto Desligar(). Você pode mudar eventualmente o valor de meuDelegate para apontar para um método diferente no meio da execução do programa. Agora imagine o código:
meuDelegate();
Qual método será executado nessa linha acima? Depende de qual referência a variável meuDelegate está armazenando naquele momento. Os delegates fornecem uma maneira flexível de referenciar e executar métodos dinamicamente.