Avantages de l'utilisation de délégués?

Je suis à la recherche d'implémenter le pattern observer dans VB.NET ou C# ou certains autres de première classe .NET de la langue. J'ai entendu dire que les délégués peuvent être utilisés pour cela, mais ne peut pas comprendre pourquoi ils seraient préférables anciennes interfaces mises en œuvre sur les observateurs. Donc,

  • Pourquoi devrais-je utiliser les délégués au lieu de définir mes propres interfaces et en passant autour des références à des objets de leur mise en œuvre?
  • Pourquoi je veux l'éviter à l'aide de délégués, et aller avec un bon ol'-fashioned interfaces?
Demandez-vous une justification pour la programmation fonctionnelle, ou demandez-vous pourquoi un "délégué" de type est nécessaire en C# pour faire de la programmation fonctionnelle?
Pouvez-vous donner un exemple d'une situation où vous avez ce doute? Je ne suis pas sûr de comprendre ce que vous demandez.
double possible de les délégués à ne pas juste abréviation interfaces?

OriginalL'auteur | 2008-11-19