Hallo Uwe,
ich habe gerade mal durch deinen Vortrag geschaut.
Vielen Dank für die sehr schöne Session, da zeigst Du wirklich perfekt wie man von den ollen Events weg zu einem schönen, schlanken Design kommen kann.
Alles sehr schön sauber getrennt und modular lauffähig, fast schon ein halbes MVVM
Was mich da umtreibt sind die Validators, wo es laut Deiner Aussage auf die Reihenfolge der AddXxx Einträge ankommt.
Das fände ich als einzige Stelle verbesserungswürdig, um solche blöden Fehler sauber abzufangen.
Was ich mich frage ist, ob man nicht die Reihenfolge der AddXxx während des Aufrufs testen kann und
bei falscher Reihenfolge von AddValidator eine
Exception werfen kann.
Weil Du in erster Linie class helper benutzt hast ist durch das modulare Design wohl keine einfache Abfrage möglich, welcher Oberserver/Validator dem Control bereits zugewiesen wurde.
Das Verwenden von Interposern, um irgendwelche Variablen zu den Controls hinzuzufügen, ist auch nicht so elegant.
Im letzten Teil hast Du dann im TObservableDataWrapper diese Observer zusammengefasst, das würde einen solchen Test wohl ermöglichen,
aber packt natürlich wieder verschiedenen Dinge zusammen.
Dieser Wrapper sollte solche Probleme mit der Reihenfolge doch abfangen können.
Gibt es da eine schöne Lösung die jeweils zu jedem Control gehörenden Oberserver/Validatoren zu ermittlen,
oder ist das vielleicht schon in Deiner Lösung drin ?
Das Video ging jetzt schön flott, ich muss da sicher nochmal in Ruhe reinschauen, wird es die verschiedenen Ausbaustufen nochmal separat auf
deinem GitGub-Account geben ?