Commit b9c120b8 authored by Blanke, Daniela's avatar Blanke, Daniela
Browse files

Update architecture-mvc-mvvm-javafx.html

parent 086a188b
Pipeline #8024 passed with stage
in 1 minute and 16 seconds
......@@ -427,7 +427,7 @@ Eine Konvention des MvvmFX-Framework verlangt es, dass beide Dateien im gleichen
<li><b>ViewModel</b>: Das <i>ViewModel</i> hat keine Abhängigkeiten zu UI-Elementen von JavaFX (s. <code>import</code>-Anweisungen in Zeilen 1-2 im <i>ViewModel</i>). Wie der <i>Controller</i> in MVC kennt das <i>ViewModel</i> eine Instanz des <i>Model</i>, um es zu manipulieren (Zeile 7). Der Zustand der <i>View</i> wird über die <code>StringProperty</code>-Attribute in den Zeilen 9-10 gespiegelt. Ansonsten enthält das <i>ViewModel</i> die Präsentationslogik, die die Anwenderinteraktion steuert, d.h. hier die Methoden <code>selectCell</code> und <code>reset</code>. Für diese Methoden können einfache <i>Unit Tests</i> geschrieben werden – und zwar unabhängig von JavaFX.
</li>
<li><b>Model</b>: Das <i>Model</i> ist nicht verändert worden.</li>
<li><b>Application</b>: Wie zuvor startet die Klasse <code>TicTacToeApplicationMVVM</code> in gewohnter Weise die JavaFX-Anwendung. Bei initialen Laden der <i>View</i> (Zeile 8) wird die Klasse <code>FluentViewLoader</code> von MvvmFX verwendet, um das <i>ViewModel</i> an die <i>View</i> zu binden. Ab hier verwaltet das Framework beide Objekte in einem sogenannten <code>ViewTuple</code>.</li>
<li><b>Application</b>: Wie zuvor startet die Klasse <code>TicTacToeApplicationMVVM</code> in gewohnter Weise die JavaFX-Anwendung. Beim initialen Laden der <i>View</i> (Zeile 8) wird die Klasse <code>FluentViewLoader</code> von MvvmFX verwendet, um das <i>ViewModel</i> an die <i>View</i> zu binden. Ab hier verwaltet das Framework beide Objekte in einem sogenannten <code>ViewTuple</code>.</li>
</ul>
<p>Die gezeigten Code-Beispiele zur Realisierung des MVC- und MVVM-Musters in JavaFX finden sich in den Verzeichnissen <a href="/architecture/mvc" class="repo-link">/architecture/mvc</a> und <a href="/architecture/mvvm" class="repo-link">/architecture/mvvm</a> des Modul-Repository.</p>
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment