AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

MVVM Framework für Delphi

Ein Thema von mquadrat · begonnen am 1. Nov 2010 · letzter Beitrag vom 19. Jan 2015
Antwort Antwort
Seite 1 von 6  1 23     Letzte »    
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#1

MVVM Framework für Delphi

  Alt 1. Nov 2010, 13:43
Hallo zusammen,

nachdem ich die letzten Wochen in WPF und C# unterwegs war, habe ich mir die Frage gestellt, ob es eigentlich ein brauchbares MVVM Framework für Delphi gibt?!


Vielen Dank im Voraus
  Mit Zitat antworten Zitat
Thomas_K

Registriert seit: 16. Apr 2006
71 Beiträge
 
Delphi XE8 Professional
 
#2

MVVM Framework für Delphi VCL/FMX

  Alt 15. Jan 2015, 09:21
Ich greife mal den Thread auf, da ich mehr oder minder dieselbe Frage erneut stelle.

Ich habe erste Versuche in MVC und MVVM ohne ein Framework zu verwenden unternommen, im Großen und Ganzen funktioniert es auch so wie gewünscht, nur die Komplexität des Quellcodes und damit der Aufwand ist aber nicht ohne. Für die einzelne Programmfunktionen wurden einzelne Controller bzw. ViewModels geschrieben, die wiederum einzelne Modele vorrausetzen. Man hat zum Schluss sehr viele einfache Klassen in sehr viele Dateien geschrieben. Ein Großteil des Quellcodes besteht nur darum sicherzustellen, dass die einzelnen Komponenten mit einander Daten/Informationen austauschen können, also der Anwender löst im View eine Aktion aus, die dem ViewModel mitgeteilt wird, das wieder dem Model weiterreicht und dann endlich eine Aktion ausführt und das Resultat wird dann wieder dieselbe Kette rückwärts bis in den View über mittelt. Beachten muss man das ViewModel und das Model selbst wieder aus vielen einzelnen Komponenten bestehen, die wiederum selbst Daten/Informationen untereinander austauschen müssen.

Das Ganze verlangsamt das Programmieren von relativ kleinen VCL bzw. FMX Anwendungen deutlich und macht das ganze nur bedingt praktikabel, nun bin ich auf der Suche nach Beispiele, die die Komplexität minimieren und bin dabei auf ein interessanten Mitschnittes eines Seminars gestoßen
Introduction to MVVM - The Delphi Way https://www.youtube.com/watch?v=dOXXtitTy3s In dem knapp einstündigen Mittschnitts wird u.a. ein VCL Beispiel unter Verwendung eines MVVM Framework besprochen. Dieses Framework verwendet Generics und die RTTI, so dass man relativ wenig Glue Code in seiner eigentlichen Anwendung schreiben muss. Was ich aus dem Video noch nicht entnommen konnte, ob der Beispiel Quellcode veröffentlich wird oder nicht bzw. wie man mit dem vortragenden Redner Kontakt aufnehmen kann.

Gibt es irgendwo ein Beispiel VCL/FMX, dass unter Verwendung eines Frameworks das MVVM Pattern (oder Artverwandte) umsetzt?
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: MVVM Framework für Delphi

  Alt 15. Jan 2015, 09:45
Hi,

hier vom Skill Sprint 19.8.2014:
https://www.youtube.com/watch?v=sGn3-CsCYYM

Build an MVVM App in Twenty Minutes with Nick Hodges

Code gibt es sicherlich irgend wo zum runter laden (kommt i.d.R. auf der letzten Folie)

Grüße
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

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

AW: MVVM Framework für Delphi

  Alt 15. Jan 2015, 10:58
In die zwei Videos werde ich mal noch reinschauen...

Aber grundsätzlich finde ich MVVM in der Praxis (unnötig?) komplex.
Ich bin ja zu C# gewechselt und habe mir auch mal WPF+MVVM (incl. DevExpress) angesehen.
Es kann natürlich an mir liegen, aber ich bin damit nicht klar gekommen.
Es gibt aus meiner Sicht zu viele Abhängigkeiten der einzelnen Schichten.

Ich wünsche mir eigentlich eher ein direktes Binding wie es mit den LiveBindings angedacht war (die aber nicht wirklich einsetzbar sind).

Auch in DSharp erschien mir der MVVM- oder MVP-Ansatz (ich weiß nicht mehr genau) zu kompliziert. Jedenfalls konnte ich die Demo nicht nachvollziehen.

Ich hatte ja mal ein Binding-Framework angefangen: http://www.delphipraxis.net/173360-s...framework.html
Das ist natürlich nicht die Spitze der aktuellen möglichen Technologie, aber diese Arbeitsweise finde ich immer noch sinnvoll und wünschenswert.

Es lassen sich sehr leicht Businessobjekte definieren und die Bindung zur GUI lässt sich ebenso leicht herstellen.
Den Grundgedanken will ich daher noch nicht endgültig verwerfen.

MVVM will natürlich eine Trennung zwischen BL und GUI erreichen, was sinnvoll ist. Der Aufwand für den Programmierer ist aber im Allgemeinen sehr hoch um diese beiden Schichten und das Binding zu organisieren.

Ich würde mir eine Lösung wünschen, die einen extrem einfachen getrennten Aufbau von BL und GUI ermöglicht und die Bindung zwischen Controls und BL-Objekten im Sinne einer Verdrahtung realisiert.

PS: Der Beitrag kann auch gerne nach http://www.delphipraxis.net/160506-t...tellungen.html verschoben werden.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Thomas_K

Registriert seit: 16. Apr 2006
71 Beiträge
 
Delphi XE8 Professional
 
#5

AW: MVVM Framework für Delphi

  Alt 15. Jan 2015, 13:08
@Lemmy
Danke für den Hinweis, Nick verwendet leider kein Framework - trotzdem sehr Intersannt.

@stahli
Bindings ist sicherlich ein sehr wichtiger Punkt und das hat mich in dem Introduction to MVVM - The Delphi Way aufhorchen lassen, es sind nur 3 Zeilen Code für 3 Bindungen!
Erklärt bzw. gezeigt wird in dem Video hier an dieser Stelle https://www.youtube.com/watch?v=dOXXtitTy3s#t=28m08s Die MVVM Demo Code Erklärung startet hier https://www.youtube.com/watch?v=dOXXtitTy3s#t=25m08s

Sinn eines Frameworks ist es mit möglichst wenig Programm Code aus zukommen und das wird hier wirklich gut im Video gezeigt. https://www.youtube.com/watch?v=dOXXtitTy3s#t=35m36s Eine Programmänderung erfordert nur Anpassungen des Quellcodes im ViewModel.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: MVVM Framework für Delphi

  Alt 15. Jan 2015, 13:14
DSharp hast Du Dir bereits angeschaut?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: MVVM Framework für Delphi

  Alt 15. Jan 2015, 13:57
Aber grundsätzlich finde ich MVVM in der Praxis (unnötig?) komplex.
schön, dass das jemand genauso sieht...

Ich habe zwischen 2009 und 2010 in einem Projekt sehr massiv das MGM (Model Gui Mediator) Pattern eingesetzt, das fand ich einfach, schlank und einfach anzupassen... fertige frameworks mit umgesetzten fertigen MVVM habe ich bisher noch nicht angeschaut (in Delphi)
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#8

AW: MVVM Framework für Delphi

  Alt 15. Jan 2015, 15:16
Bindings gibt es doch in MVVM. Man zieht nur eine Schicht rein, damit man die Businessobjekte von den visuellen Anforderungen trennen kann (Bereitstellung einer Lookup-Liste z.B.)

MVVM ist ähnlich überflüssig wie ein solides Architekturkonzept für ein Haus.

Deine Gartenlaube benötigt so etwas nicht, auch der Anbau am Seitenflügel deines Einfamilienhauses nicht. Auch ein Fertighauß kommt ohne Konzept aus.

Aber ein Hochhaus, oder gleich eine ganze Stadt, kommt ohne Architektur und sehr durchdachte Konzepte nicht aus, denn wenn Du die Kabelschächte vergessen hast, aber im Dachgeschoß doch Abwasser und Strom brauchst, siehst du sonst alt aus.

Ich würde persönlich einem RAD-Tool wie Delphi allerdings kein MVVM aufstülpen, obwohl das mittlerweile einigermaßen hinhaut: Jede IDE/Programmiersprache bzw. Framework hat seine Vorteile. Kann sein, das das toll funktioniert, aber das ist beinahe so, als ob man mit nem Mini Pakete ausfährt. Geht, aber der Mini wurde wegen des Parkplatzmangels in der City zugelegt. Zum Ausfahren nehme ich dann noch den Lieferwagen.

Gerade benötige ich einen Prototypen für eine Mobile-App und ärgere mich, daß ich kein Delphi rumzuliegen habe, mit dem das am schnellsten ginge.
  Mit Zitat antworten Zitat
vagtler

Registriert seit: 9. Jul 2010
Ort: Köln
667 Beiträge
 
Delphi 2010 Professional
 
#9

AW: MVVM Framework für Delphi

  Alt 15. Jan 2015, 15:50
[...] Gerade benötige ich einen Prototypen für eine Mobile-App und ärgere mich, daß ich kein Delphi rumzuliegen habe, mit dem das am schnellsten ginge.
Nimmt man für Prototypen nicht sowieso besser spezialisierte Tools wie Appcooker o.ä.?
  Mit Zitat antworten Zitat
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#10

AW: MVVM Framework für Delphi

  Alt 15. Jan 2015, 16:15
MVVM in Delphi braucht halt sehr viel Disziplin. Aber der Vorteil ist bei Cross-Plattform-Entwicklung schon nicht zu verachten. Bis zum View-Model bleibt ja alles gleich; nur der konkrete View ist anders. Ebenso kann ich in einem Programm für einen Kunden einen anderen View einbauen, ohne dass mir irgendwas um die Ohren fliegt. Die Bindings zwischen View und View-Model werden ja in den meisten Frameworks sowieso über Konventionen erzeugt.

Wir arbeiten aber aktuell auch nicht mit MVVM, was wohl daran liegt, dass wir nur noch Legacy-Anwendungen in Delphi haben. Da ist die Stoßrichtung eher Evolution als Revolution
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 6  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz