2009-07-28 7 views
2

Ich arbeite derzeit an einem Projekt von mir mit Prism (Composite Application Library/Guidance). Die Anwendung wird eine spezialisierte MSPaint-ähnliche Anwendung für Basketball (vordefinierte Objekte für Bälle, Spieler usw.) sein.Wie feinkörnig sollten Module in Prism sein?

Jetzt frage ich mich, wie ich meine Anwendung in Prism-Module organisieren soll. Vor allem, wenn man über den Zeichenbereich der Software nachdenkt.

Soll ich die allgemeine Zeichnungsansicht (2 Spalten: Toolbox, Canvas) in 2 Module (Toolbox und Canvas) aufteilen oder wäre der Overhead, der durch die ständige Kommunikation dieser Module entsteht, zu überwältigend?

Wie feinkörnig sollten Prism Module wirklich sein?

Vielen Dank im Voraus und mit freundlichen Grüßen, crischu

Antwort

6

Es gibt sehr wenig Aufwand, wenn Sie in Module zu trennen.

Ich würde mit dem gehen, was Ihnen hilft, Ihre Lösung zu organisieren, anstatt sich sehr viel Gedanken über Leistungsüberlegungen zu machen. Sie können Module leicht kombinieren, wenn Sie feststellen, dass sie Ihnen Probleme bereiten oder Sie feststellen, dass zwei Module wirklich zusammen gehören. Die Regel lautet:

Lassen Sie es laufen. Lassen Sie es richtig laufen. Lassen Sie es schnell laufen.

In dieser Reihenfolge. Tun Sie, was sich zuerst gut anfühlt, und reformieren Sie gegebenenfalls später.

+0

Ja stimme ich zu - einfach evolutionäres Design verwenden. – RichardOD

0

Ich würde sagen, es hängt davon ab, wie Sie die Funktionalität Ihrer Anwendung über die Benutzeroberfläche verteilen. Wenn Sie nur einen Bildschirm haben, aber mehrere Bereiche mit verschiedenen Funktionen verwalten, sollte jeder Bereich (Registerkarte, Bereich usw.) über ein eigenes Modul verfügen. Dies ist bei den Stichproben von StockTrader RI oder NewsAggregator der Fall. Aber auf dem Projekt, das wir beginnen, entschieden wir uns, mehrere Seiten, eine Seite für jedes Hauptmerkmal zu haben und Navigation zwischen ihnen zu haben. In diesem Fall repräsentiert ein Modul eine Seite, die nicht kleiner ist.