Einzelnen Beitrag anzeigen

Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#22

AW: Trennung von GUI und Logik

  Alt 1. Mai 2019, 19:17
Hallo,

seit ein paar Tagen bin ich nun dabei, die hier vorgeschlagenen Methoden der Kommunikation zwischen GUI und Logik auszuprobieren. Dabei wird für mich immer deutlicher, dass eine absolute Trennung garnicht möglich ist, wenn die Logik während der Abarbeitung des Auftrages, der vom GUI erteilt wurde, Informationen an das GUI übermitteln bzw. Aktionen des GUI auslösen soll....

PS: Die oder Das GUI? Nach den geltenden Regeln heißt es doch im Deutschen das Interface? Oder doch nicht??
Delphi bietet eben keine interne Lösung, um eine Zwei-Wege-Datenbindung zu ermöglichen (abgesehen von den Livebindings ).

Möglichkeiten, so etwas zu programmieren gibt es mehrere. Mir gefällt es aber nicht, irgendwelche Methoden händisch zu schreiben, die den Austausch abwickeln.

Statt dessen wünsche ich mir ein Framework, dass das abstrakt im Hintergrund erledigt.
Z.B. habe ich in der BL Personen in einer Liste "Familie".
Dann will in der GUI (für mich: "DIE Schnittstelle") eine Listbox binden an "Familie" und dort einstellen, dass die Items die Eigenschaft "Vorname" verwenden sollen (natürlich etwas verkürzt dargestellt).
Jetzt soll die Liste
Zitat:
Karl
Hilda
Phillip
anzeigen.
Ist in der Listbox oder der Liste keine Sperre eingestellt, muss diese auch bearbeitet werden können (ähnlich DBControls).

Dazu müssen BL und GUI sich austauschen können, ohne dass beide sich wirklich kennen.
Es muss eine Kommunikationsschnittstelle geben, die mit beiden Seiten klar kommt, ohne selbst wieder etwas von BL und GUI zu kennen. Sie muss also sehr abstrakt arbeiten.

Ich habe mich mal an einem Framework versucht: https://www.delphipraxis.net/173360-...framework.html
Du kannst ja mal etwas stöbern. Aus meiner Sicht war der Ansatz schon sehr gelungen.

Das Projekt habe ich aber eingestellt und arbeite an etwas neuem (was noch länger dauern wird, wovon ich aber die grundsätzliche Funktionalität schon mal festgestellt habe).
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat