Utiliser l’AOP avec PostSharp pour implémenter INotifyPropertyChanged
J’ai ce billet dans mes drafts depuis un moment, et il serait peut-être bon de l’en sortir avant qu’il ne soit trop tard… Dans un post récent, je parlais de l’interface INotifyPropertyChanged
, en donnant un exemple d’implémentation basée sur les lambda expressions et les expression trees qui permettait d’obtenir une solution fortement typée.
L’AOP peut également être une solution, et peut-être même le meilleur compromis pour peu que l’on en tire partie correctement. Suite à un commentaire de Jb, j’ai essayé de voir ce que pouvait donner l’utilisation d’un tisseur statique comme PostSharp dans ce cas précis.
(more…)
Une astuce volée à Jon Skeet
Si certains d’entre vous trouvent pénible le fait de devoir s’assurer qu’un évènement est non null avant de le lancer, voici une idée :
Profitez de la contravariance sur les delegates et initialisez votre event de la sorte :
18 comments