Wenn man eine Form hat, auf dem viele Controlls sind, diese auch gegenseitige Abhängigkeiten haben, dann muss die Logik leider auf das Form.
Nein. Besonders dann nicht, wenn Du
Unit-Tests durchführen willst.
Aber du kannst es mir ja erklären.
Ich habe statt einer Erklärung eine Demo bereit gestellt, die zeigt, wie man recht elegant und konsequent View(Form) und Model(Datenklasse) trennt. Damit das Ganze nicht nur in Schönheit stirbt, muss nun noch der nächste Schritt folgen. Leider ist in meiner Demo noch eine harte
Unit- Referenz vorhanden. Es ist zu prüfen, inwieweit sich der DSharp-Ansatz mit dem DI-Ansatz von Emballo verträgt und damit eine Modularisierung mit Hilfe von Interfaces und Dependency Injection möglich ist. DSharp hat auch etwas für das Mocking getan, so dass meine Demo auch für das UnitTesting fit gemacht werden könnte. Und zum Schluss machen wir noch eine weitere
GUI mit FMX-Controls auf und zeigen damit einen weiteren Anwendungsfall.
Versteh mich nicht falsch. Mit reinen Delphi-Bordmitteln würde ich auch niemals so etwas umsetzen können. Aber die vorhandenen Frameworks bringen die anerkannten Design-Patterns halt auch in unsere Programmierwelt. Und - um mit strahlenden Siegern zu sprechen - das ist gut so.