![]() |
Re: Viele proceduren auf Form auslagern ?
Die Includes sind eher Relikte aus alten Zeiten. Das einzige, wozu sie heute noch verwendet werden soweit mir bekannt ist, sind die Compilerschalter für die Units (z.B. JCL,JVCL). Zum Auslagern von Ereignissprozeduren/-funktionen sind sie nicht geeignet. Wie Luckie schon geschrieben hat, am besten über OOP.
|
Re: Viele proceduren auf Form auslagern ?
Ja, das habe ich schon vermutet; die Includes führen ja nur zu einer "optischen" Auslagerung und sind dadurch selbstverständlich überhaupt nicht mit einer Klassenbildung zu vergleichen - OK!
Aber vielleicht noch mal zur Vertiefung des Themas und den Denkansätzen von MVC: In Wikipedia gibt's da ja einen allgemeingültigen Text, der mich leider eher irritiert. Der "normale" Umgang mit dem Delphi-Formular führt m.E. eher zu einem dem MVC gegenteiligen Ergebnis. Das grundsätzlich Vorgehen ist doch, dass alle Daten, deren Steuerung und auch die Optik des Formulars quasi automatisch immer in der dem Form zugehörigen Unit angelegt werden. Wenn ich das auch nur annähernd richtig verstehe, dann müsste man doch im Sinne von MVC gerade diese "Automatik" verlassen, oder? Gruß aus Hamburg |
Re: Viele proceduren auf Form auslagern ?
Ja. Man müsste die Daten( Model), die GUI (View) und die Logik (Controller) strikt trennen.
|
Re: Viele proceduren auf Form auslagern ?
Nun ja, die Delphi-IDE verführt schon dazu Daten und Visualisierung nicht zu trenne. Man packt eine Schaltfläche auf das Formular, macht einen Doppelklick auf die Schaltfläche und landet automatisch in der von der IDE erzeugten Ereignisprozedur. Und gerade Anfänger, ich spreche da aus eigener Erfahrung, werden dann dazu verleitet dort ihren Code hinzuschreiben. Am Ende hat man dann genau das Problem, welches Holger hier anspricht.
Der erste Schritt, der weg von diesem Programmierschema führt, ist der Aha-Effekt, den man hat, wenn man identischen Code in zwei Ereignisprozeduren hat und feststellt, dass man dafür eine eigene Methode in der Form-Klasse erstellen kann und diese dann in beiden Ereignisprozeduren aufruft. Der nächste Schritt ist dann wirklich die strikte Trennung von Daten und Visualisierung. Und wie gesagt, dies gelingt am einfachsten in dem man konsequent mit Klassen arbeitet. |
Re: Viele proceduren auf Form auslagern ?
Hi,
jetzt bin ich auf jeden Fall schlauer. Ich bin nämlich einer derjenigen, die erst seit kurzem mit Delphi arbeiten. Zitat:
Werde mir jetzt mal das Klassenthema zu Herzen nehmen. Vielen dank nochmal. Gruss Holger |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz