Pourquoi avez-vous besoin de méthodes partielles c #? Les événements peuvent être utilisés pour atteindre le même objectif?

StackOverflow https://stackoverflow.com/questions/3628804

  •  26-09-2019
  •  | 
  •  

Question

Je lisais le livre « Apress Pro LINQ: Language Integrated Query en C # » et je suis tombé sur des méthodes partielles, mais je ne comprends vraiment pas ce qui est la nécessité pour eux

.

Je pense que les exemples dans le livre (propriétés avant et après le changement) peuvent être mises en œuvre à l'aide d'événements. Ainsi, toute explication?

Était-ce utile?

La solution

Oui, vous pourriez obtenir un effet similaire avec les événements que vous pouvez avec des méthodes partielles. méthodes partielles sont vraiment juste une façon de laisser des générateurs de code, principalement les concepteurs, pour générer des crochets pour le code non généré. Événements pourraient remplir ce rôle.

Cependant, il y a des avantages à des méthodes partielles sur les événements en particulier

  • appels de méthode partiels sont complètement retirés du produit IL s'il n'y a pas mise en œuvre. Cela ne peut pas être fait avec les événements.
  • La conception des méthodes partielles est de résoudre le problème où il y a 1 fournisseur du crochet et 1 consommateur. Les événements sont destinés à modéliser 1 fournisseur avec les consommateurs N et ont la tête qui vient avec une telle conception
  • Il n'y a pas de problème de la commande (qui commence). Avec les événements dont vous avez besoin pour assurer le code qui souscrit aux courses de l'événement avant que le concepteur code généré qui déclenche l'événement. Ce n'est pas toujours possible si dire le concepteur génère un constructeur. méthodes partielles ont pas de problème.

Autres conseils

Ils ne sont pas « nécessaire », mais souhaité pour des applications à grande échelle. L'utilisation intensive des événements conduit à l'anti-modèle Smart UI où la logique métier est étroitement lié à l'interface utilisateur, alors que les fonctions partielles vous permettent de mieux séparer vos préoccupations.

Voici un lien vers le MSDN C # Guide de programmation sur les méthodes partielles ainsi. http://msdn.microsoft.com/en-us/library/wa80x488. aspx

Le compilateur supprime les appels aux méthodes partielles s'il n'y a pas mises en œuvre. Avec l'alternative des événements, les auditeurs doivent être vérifiés lors de l'exécution (ils doivent également être stockés, etc.). Cela permet à des méthodes partielles d'être plus performant, surtout quand il y a beaucoup d ' « événements » potentiels et seulement quelques-uns ont « auditeurs » enregistrés.

Méthodes partielles sont définies au moment de la compilation, les événements lors de l'exécution. Ils sont donc des choses différentes.

Méthodes partielles ont été portées à l'image pour étendre les classes existantes que vous avez aucun contrôle sur (une partie du cadre ou généré automatiquement)

Hope this helps

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top