salut Je suis sur le point d'ajouter de nouvelles fonctionnalités à l'application que je suis actuellement en train d'écrire. Je dois écrire une signalisalité des annulations / refonte. Cependant, 90% de notre candidature est prêt et je ne sais pas quel est le meilleur moyen de mettre en œuvre cette fonctionnalité sans affectation (trop de) code déjà créé. P>
3 Réponses :
Il n'y a pas beaucoup de détails ici. Cependant, les fonctionnalités d'annulation / de rétablissement sont généralement gérées via une variante du modèle de commande . Selon votre architecture, cela pourrait constituer une simple réchangeance de votre fonctionnalité de base dans "Commandes" ou une refonte majeure. P>
C'est comme ça que tu le fais. Une fois que tout votre programme fait est introduit dans les cas de «commandes», vous y êtes 80%.
Si les architectes / développeurs d'origine n'avaient pas cela dans leur esprit quand ils ont commencé à concevoir le système, je suis penché vers cet étant une refonte majeure!
@TSter: Il s'agit généralement d'une nouvelle retravailleur majeure - bien que cela dépend de la manière dont l'application acheminée l'application doit commencer.
CSLA.NET est une bibliothèque de logique commerciale qui inclut la fonctionnalité intégrale / redo. Je pense que cela est même implémenté par une interface, il devrait donc être "peu invasif". Ils le décrivent mieux que je ne peux pas ici < / a>. p>
Le lien ne fonctionne plus.
@Jan merci, (s) lien (s) mis à jour
comme Reed Copsey EM> dit que le modèle le plus courant de la mise en œuvre de DO / Redo est alors vous avez une classe (contrôle) qui exécute toutes les commandes dans son ensemble, cette classe doit être composée par un groupe de commandes, lorsque vous exécutez les commandes, chaque commande est poussée à l'intérieur d'une pile (par exemple la méthode texte de liaison p> p> push () code>), dans le cas où vous souhaitez annuler les actions, vous prenez chaque élément de La pile (au moyen de
pop () code>) a exécute son
annuler () code> méthode. p>
Nous devrions être capable de voir du code ou vous devriez décrire ce que votre programme était pour que nous puissions aider.
Vous envisagez même de ne pas nous dire quel type d'application il est (web, silverlight, bureau, etc.) ou quel genre il est (jeu, crud, réseau social, etc.) Il n'y a vraiment rien pour nous de continuer.
Ceci est une application WPF qui permet à l'utilisateur de dessiner des diagrammes. L'utilisateur peut ajouter différents types de blocs, les connecter déplacer et redimensionner. Il peut également assainger des propriétés à bloquer - nom, dates, etc.