Hallo zusammen,
ich überlege schon seit längeren, wie man eine komplere GUI-Anwendung aufbaut (nicht Java-spezifisch).
Ich habe mir MVC angesehen, allerdings findet das so wie ich das verstehe eher auf Komponentenebene statt, also das ein TreeView z.B. aus einem Model und einer View besteht.
Das ist allerdings nicht wirklich, wonach ich suche.
Mir geht es eher darum, wie die Gesamtanwendung aufgebaut wird.
Sinnvoll wäre sicherlich eine Trennung in
- Präsentationsschicht
- Logikschicht
(+ evtl. Datenschicht oder sowas)
Machen wir mal ein Beispiel:
Meine graphische Oberfläche besteht aus einem Hauptfenster, aus 5 Widgets besteht.
Jedes dieser Widgets kann jetzt wiederrum aus einem Modell und einer View bestehen.
Bisher habe ich keine Controller verwendet.
Die Struktur sieht dann so aus:
Wie greife ich nun "von außen" auf die Models zu?
Erstelle ich dafür eine Wrapperklasse, die alle Models beinhaltet, von der aus ich Zugriff auf die models habe?
Z.B. muss das PlotConfigWidget (oder sein Controller, der im Moment noch nicht exisitert), wenn man dort etwas ändert das Model des PlotWidgets verändern.
Wie initialisiere ich jetzt die ganze graphische Oberfläche inkl. Models? Von wo kann man auf die Models zugreifen?
Ich habe recht viel im Internet gesucht zum (Klassen-)Aufbau von (komplexeren) GUI-Anwendungen, aber nicht wirklich was gefunden. Es wird eigentlich immer nur darauf eingegangen, wie man mit GUI-Framework X bestimmte sachen macht, das ist aber nicht was ich suche.
Kennt ihr vielleicht ein gutes Buch oder Artikel oder sonstwas dazu? Kann mit Java, C# oder C++ sein.
Vielen Dank schonmal für eure Hilfe!
ich überlege schon seit längeren, wie man eine komplere GUI-Anwendung aufbaut (nicht Java-spezifisch).
Ich habe mir MVC angesehen, allerdings findet das so wie ich das verstehe eher auf Komponentenebene statt, also das ein TreeView z.B. aus einem Model und einer View besteht.
Das ist allerdings nicht wirklich, wonach ich suche.
Mir geht es eher darum, wie die Gesamtanwendung aufgebaut wird.
Sinnvoll wäre sicherlich eine Trennung in
- Präsentationsschicht
- Logikschicht
(+ evtl. Datenschicht oder sowas)
Machen wir mal ein Beispiel:
Meine graphische Oberfläche besteht aus einem Hauptfenster, aus 5 Widgets besteht.
Jedes dieser Widgets kann jetzt wiederrum aus einem Modell und einer View bestehen.
Bisher habe ich keine Controller verwendet.
Die Struktur sieht dann so aus:
Code:
MainWindow
PlotWidget
PlotConfigWidget
VitalsWidget
SensorInformationWidget
RecordWidget
Wie greife ich nun "von außen" auf die Models zu?
Erstelle ich dafür eine Wrapperklasse, die alle Models beinhaltet, von der aus ich Zugriff auf die models habe?
Z.B. muss das PlotConfigWidget (oder sein Controller, der im Moment noch nicht exisitert), wenn man dort etwas ändert das Model des PlotWidgets verändern.
Wie initialisiere ich jetzt die ganze graphische Oberfläche inkl. Models? Von wo kann man auf die Models zugreifen?
Ich habe recht viel im Internet gesucht zum (Klassen-)Aufbau von (komplexeren) GUI-Anwendungen, aber nicht wirklich was gefunden. Es wird eigentlich immer nur darauf eingegangen, wie man mit GUI-Framework X bestimmte sachen macht, das ist aber nicht was ich suche.
Kennt ihr vielleicht ein gutes Buch oder Artikel oder sonstwas dazu? Kann mit Java, C# oder C++ sein.
Vielen Dank schonmal für eure Hilfe!