Je travaille sur une application WPF MVVM. La chose que je remarque, c'est que je dois écrire une quantité démesurée de code de la chaudron simplement pour déclarer des commandes (par le biais de Délégatecommands de la boîte à outils MVVM de l'équipe WPF), des propriétés attachées et des comportements ci-joints. Existe-t-il des stratégies disponibles pour réduire la quantité de code de la chaudière que je dois écrire? P>
Merci! P>
3 Réponses :
Personnellement, j'aime Josh Smith's Library de fondation MVVM . Il utilise une classe appelée dans Son Blog , Josh parle également de l'utilisation d'un observateur de propriété générique pour éviter certains des aspects messier de Honnêtement, bien que le code soi-disant "chaudière" permet de mettre en place une base très dynamique et flexible pour votre application. Si vous faites une petite application facile et facile à maintenir, vous pouvez vous demander, "Dois-je même appliquer le modèle MVVM ici?" EM> Si, d'autre part, vous faites une application plus grande que aura une longue durée de vie et nécessitera beaucoup de maintenance, ce code de la chaudière vous permettra de vous sauver sur la ligne. P> relaiscommand code> là-bas, mais cela semble assez similaire à votre
Délégatecommand code> de la boîte à outils. Il vous permet de créer une commande et de passer les canexecute em> et exécuter la logique sur les expressions Lambda. Cela aidera à réduire beaucoup de code de la chaudière. P>
PropertyChanged code> Manipulation des événements. Cela vaut la peine d'être examiné. P>
Lien vers Blog Article: joshsmithonwpf.wordpress.com/2009/07/11/...
La stratégie la plus évidente que je puisse penser consiste à utiliser des extraits de code et / ou des modèles de fichiers. Il ne réduit pas les lignes de codes mais au moins cela vous fait gagner du temps. P>
Vous pouvez les faire vous-même (ou trouver certains que vous pouvez importer directement sur votre studio Visual). P>
J'utilise personnellement la boîte à outils Light MVVM de Laurent Bugnion et j'utilise ses temples de code / fichier de code, ils me sauvent beaucoup de temps. Je supposerais qu'il y a quelque chose de similaire pour la plupart des butiers populaires MVVM. P>
espérons que cela aide! p>
J'ai constaté que j'écrivais beaucoup de code pour implémenter une notification de changement via l'interface inotifyproperTychanged. Pour réduire ce problème, j'ai trouvé un package Nuget appelé propriétéChanged.fody qui fait de l'ajout inotifypropertychangned à une classe de classes vraiment simple.
Voici comment l'utiliser; P>
using PropertyChanged; [ImplementPropertyChanged] public partial class Order { }
Donnez-nous un exemple de quelque chose que vous considérez «chaudière». La chaudière d'un homme est la logique commerciale d'un autre homme.
J'utilise des extraits pour les créer. Les extraits créent des #regions donc je n'ai pas à regarder tout cela.