Différence entre les délégués et les événements en C #

Différence entre les délégués et les événements en C #

Différence clé - Délégués vs événements dans C #
 

C # est un langage de programmation développé par Microsoft. Il prend en charge la programmation structurée et la programmation orientée objet. Les délégués et les événements sont utilisés pour la programmation axée sur les événements en C #.  Un délégué est un pointeur de type type vers une méthode. Dans une application avec une interface utilisateur graphique (GUI), il y a des boutons, etc. Lorsqu'un bouton est cliqué, une sorte d'action se produit. Ces actions sont appelées événements. Par exemple, la rafraîchissement d'une page Web déclenchera l'événement de chargement de page. Cet article traite de la différence entre les délégués et les événements en C #. Le différence clé entre le délégué et l'événement en C # est que Un délégué est une référence à une méthode tandis qu'un événement est associé à un gestionnaire d'événements utilisant un délégué. Lorsqu'un événement se produit, il envoie un signal au délégué. Ensuite, le délégué exécute la fonction correspondante.  Par conséquent, tous les événements dépendent des délégués.

CONTENU

1. Aperçu et différence clé
2. Que sont les délégués en C #
3. Quels sont les événements en C #
4. Similitudes entre les délégués et les événements en C #
5. Comparaison côte à côte - Délégués vs événements en C # sous forme tabulaire
6. Résumé

Que sont les délégués en C #?

Les délégués en C # sont similaires aux fonctions de rappel dans d'autres langages de programmation tels que JavaScript. Les fonctions de rappel sont attribuées à l'exécution. Ils fournissent des fonctionnalités qui peuvent être interrogées au besoin. La même chose peut être implémentée à l'aide de délégués en C #. Les délégués en C # découplent l'appelant et la fonction appelée. Par conséquent, il réduit le couplage lourd.

.Types classifiés du cadre net en deux catégories. Ce sont des types de valeur et des types de référence. La structure est un exemple de type de valeur. La classe est un exemple de type de référence. Les délégués sont également des types référencés. Un délégué est utilisé pour maintenir une référence à une méthode. Ce sont des pointeurs. Délégués sont dérivés du système.Classe déléguée. La déclaration du délégué est similaire à une déclaration de méthode mais contient le mot-clé «délégué».  La syntaxe du délégué est la suivante. déléguer . Le type de retour déclare la valeur de retour par la méthode. Il est appelé par le délégué. La liste des paramètres définit les paramètres requis par la méthode. Référer le programme ci-dessous avec les délégués.

Figure 01: Programme C # avec les délégués

Selon le programme ci-dessus, les méthodes Calsquare et Calcube sont similaires au délégué déclaré. Dans le programme principal, la variable CAL est attribuée à la fonction Calsquare. Maintenant, Cal pointe vers la méthode Calsquare.  Lorsque vous passez la valeur, la valeur carrée est renvoyée et elle est imprimée à l'écran. Encore une fois, Cal est affecté à la méthode Calcube. Maintenant, Cal pointe vers la méthode Calcube. Lorsque vous passez la valeur, la valeur du cube est renvoyée et imprimée à l'écran. Le même délégué est utilisé pour référer différentes méthodes. Par conséquent, cela augmente la flexibilité du programme.

Quels sont les événements en C #?

Dans une application, il peut y avoir des pressions de touches, des clics de bouton et des mouvements de la souris. Lorsque ceux-ci se produiront, un événement aura soulevé. Lorsque le bouton Soumettre est enfoncé dans un formulaire de soumission, l'événement Button_click () est augmenté en arrière-plan. L'événement appelle un exécution de la fonction associée. Lorsqu'un événement se produit, la réponse de l'application à cela. Il y a deux sections dans un programme de traitement des événements. L'éditeur contient la définition des événements et délégué. L'abonné accepte l'événement et fournit le gestionnaire d'événements.

La déclaration de l'événement est l'événement; Le type d'une déclaration d'événement doit être un type de délégué, et le délégué doit être aussi accessible que l'événement lui-même. Le nom de l'événement doit être un nom C # valide.

Figure 02: programme C # avec des événements

Selon le programme ci-dessus, le délégué et l'événement sont créés. Dans la classe de calcul, il existe une méthode pour ajouter deux nombres. Si un nombre impair est trouvé, l'événement se produira. C'est le eventOddNumber (). Dans la méthode principale, le gestionnaire d'événements EventOddNumber appelle le délégué. Enfin, le délégué exécute la méthode.

Quelle est la similitude entre les délégués et les événements en C #?

  • Les délégués et les événements en C # sont liés à des événements

Quelle est la différence entre les délégués et les événements en C #?

Délégués vs événements en C #

Un délégué est une variable de type de référence qui contient la référence à une méthode. Un événement est un membre de classe de type délégué utilisé par l'objet ou la classe pour fournir une notification à d'autres objets qu'un événement s'est produit.
 Mot-clé
Un délégué est déclaré en utilisant le mot-clé «délégué». Un événement est déclaré en utilisant le mot-clé «événement».
Dépendance
Les délégués sont indépendables. Les événements dépendent des délégués.

Résumé - Délégués vs événements dans C #

Les délégués et les événements sont deux concepts associés à la programmation axée sur les événements en C #. Cet article a discuté de la différence entre les délégués et les événements en C #. La différence entre le délégué et l'événement en C # est qu'un délégué est une référence à une méthode tandis qu'un événement est associé à un gestionnaire d'événements utilisant un délégué. Les événements dépendent des délégués. Lorsqu'un événement s'est produit, il envoie un signal au délégué. Ensuite, le délégué exécute la fonction correspondante

Référence:

1.Balagurusamy, e. Programmation en C #, un premier ministre. Quatrième Ed., McGraw Hill Education (Inde) Private Limited, 2016.
2."Menu primaire.”C tutoriel. Disponible ici 
3.sachinbpaul. Délégués en C #, Sachin Paul, 1er octobre. 2014. Disponible ici