2008-09-22 8 views
-1

Récemment, j'ai travaillé sur des applications relativement orientées données. En général, ils ont tendance à être des éditeurs pour les données représentées par des classes qui sont liées de façon étrange. Je l'ai manipulé en ayant un UserControl pour chaque type d'objet et comme la sélection change, le programme affiche l'éditeur approprié pour l'objet.Quelles sont les bonnes ressources pour l'architecture document/vue ou composite?

Le "cadre" que j'ai fait pour cela est maladroit et salissant. En général, j'ai une interface à deux volets avec un contrôle "sélection d'élément" sur la gauche et la "zone de travail" sur la droite. L'interface utilisateur doit faire l'essentiel du travail de réponse aux sélections d'éléments en déterminant UserControl à afficher et en implémentant des comportements tels que l'annulation et en demandant si l'utilisateur souhaite enregistrer des données avant de modifier les éléments peut être salissant. L'inspiration pour ce post est un joli "faire notre processus de construction plus facile" application que je travaille avec un collègue, mais il est vraiment hors de portée dans la mesure où une réécriture bien conçue arrivera probablement plus vite que le code actuel sera terminé . J'ai une familiarité passagère avec l'architecture document/vue en lisant un peu de quelques livres C++. Je comprends que la contrepartie la plus moderne dans .NET pourrait être le bloc d'application Composite UI. Le problème est que je n'ai jamais rien vu d'autre que des solutions rapides ou des howtos sur ces sujets. Ce n'est jamais du point de vue de "comment vous devriez concevoir une application pour cela" mais plus du point de vue de "coller ceci dans l'application et vous comprendrez!" J'ai passé une heure ou deux à fouiller dans la documentation de l'ACR, mais c'est un peu confus pour moi. Je n'aime pas le CAB principalement parce que je suis curieux de savoir comment les choses fonctionnent sous le capot et je pense que j'apprécierais plus si j'étais capable de mettre en œuvre une version simple d'un modèle similaire avant de plonger dans un cadre.

Ce dont j'ai vraiment besoin, c'est d'un site Web ou d'un livre axé sur ce problème. La grande partie que je ne semble pas obtenir est de savoir comment séparer les préoccupations dans les endroits appropriés; J'ai l'habitude de concevoir mes classes de données avec plusieurs méthodes pour travailler avec les données, et il semble que c'est peut-être le travail d'un objet contrôleur? Quelles sources trouvez-vous utiles pour une introduction à ce sujet? J'ai vu beaucoup d'articles qui dessinent de beaux diagrammes comme this et j'ai l'idée de haut niveau du fonctionnement de ces architectures. Je ne pense pas avoir trouvé la bonne source pour m'apprendre la partie "comment l'implémenter" de bas niveau.

Répondre

1

Je trouve this article de Martin Fowler pour être un excellent aperçu d'une variété d'architectures d'interface utilisateur. J'espère que ça aide :)

0

J'ai accepté la réponse de @Luke H parce qu'elle m'a finalement amené à plusieurs ressources qui sont assez décentes.

  • Les livres de Martin Fowler sont excellents et sont dans ma file d'attente.
  • The Build Your Own CAB Series par Jeremy Miller fait un très bon travail.
  • Il semble que je sois un peu trop ignorant des modèles de conception pour continuer, donc je lis les Patterns de Head-First Design suivis par le livre Gang of Four pour aider; après cela, je prévois de digérer les œuvres de Fowler.
Questions connexes