Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Por que usar delegate?

Estou fazendo a formação de topicos avançados em c# mas sinceramente não está me entrando na cabeça qual a importancia de usar um delegate sendo que no final do dia a gente escreve o método base da mesma forma, o delegate na minha cabeça a grosso modo so serve pra intermediar a chamada da classe program com a classe onde está o método, o porque so nao chamar a classe direto? da o mesmo resultado e ainda teria menos linhas de codigo.

Um exemplo pratico ou analogia ajudaria a entender.

1 resposta
solução!

Olá Gustavo! Como vai?

Pense nos delegates como uma forma de passar métodos como parâmetros para outras funções. Isso pode ser extremamente útil em várias situações, como quando você deseja que um método execute ações diferentes dependendo do contexto, sem precisar alterar o código original.

Vamos imaginar uma analogia: pense em um delegate como um controle remoto universal. Você pode programar esse controle para operar diferentes dispositivos (como TV, DVD, som, etc.). Da mesma forma, um delegate pode ser configurado para chamar diferentes métodos. Isso permite que você altere o comportamento do seu programa sem modificar diretamente o código do método que está sendo chamado.

Um exemplo prático seria um sistema de notificação. Suponha que você tenha um método que envia notificações de diferentes formas (e-mail, SMS, push notification). Você pode usar um delegate para passar o método específico de envio de notificação que deseja usar, sem precisar alterar o método que gerencia as notificações.

Além disso, os delegates são fundamentais para eventos e programação assíncrona em C#. Eles permitem que você registre métodos que serão chamados quando um evento específico ocorrer, tornando seu código mais modular e flexível.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.