Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Wohin mit den Nicht-Visuellen Komponenten? (https://www.delphipraxis.net/160995-wohin-mit-den-nicht-visuellen-komponenten.html)

Jazzman_Marburg 11. Jun 2011 09:45

Wohin mit den Nicht-Visuellen Komponenten?
 
Hallo Kollegen,
wohin packt ihr eure Nicht-Visuellen Komponeneten im Form-Designer?
Ich habe davon mittlerweile ein gutes Dutzend auf der Form liegen, und ziehe sie bei jeder Gelegenheit zur Seite, weil sie eigentlich überall nur stören (andere Dinge verdecken, die man gerade bearbeitet).
Haben die erfahrenen Delphianer einen Workaround?

Fragt sich und grüßt
Jazzman

DeddyH 11. Jun 2011 09:47

AW: Wohin mit den Nicht-Visuellen Komponenten?
 
Lies mal die Hilfe zu TDataModule.

Ralf Kaiser 11. Jun 2011 09:48

AW: Wohin mit den Nicht-Visuellen Komponenten?
 
Du könntest die Komponenten einfach auf ein Datenmodul packen. Es heisst zwar Datenmodul aber muss nicht nur Datenkomponenten enthalten!

EDIT: Grrrr. Hat der rote Kasten Urlaub???

DeddyH 11. Jun 2011 09:49

AW: Wohin mit den Nicht-Visuellen Komponenten?
 
*Hihi* schneller :zwinker:

schlecki 11. Jun 2011 09:58

AW: Wohin mit den Nicht-Visuellen Komponenten?
 
oder selbst im Quellcode erzeugen - das hat dann sogar den Vorteil, dass diese nicht als Komponenten installiert werden müssen; dadurch kann man die Libs dann leichter projektweise updaten.

mkinzler 11. Jun 2011 09:59

AW: Wohin mit den Nicht-Visuellen Komponenten?
 
Dann muss man aber auch alle Einstellungen im Code setzen

Stevie 11. Jun 2011 10:25

AW: Wohin mit den Nicht-Visuellen Komponenten?
 
Ein ganz klares: Kommt drauf an. Komponenten, die primär für GUI Funktionalitäten zuständig sind (dazu würde ich z.B. eine ActionList zählen) dann gehören sie für mich auf die Form. Hast du allerdings Dinge, wie DBConnection, Datasets (über Datasources müsst ich nochmal nachdenken, wo die für mich hingehören) kann man die in ein DataModule packen. Allein um Wiederverwendbarkeit und Trennung von GUI und BL zu gewährleisten.

P.S. Ich hasse das Erzeugen von Komponenten im Code, wenn man sie auch im Designer platzieren könnte...

Jazzman_Marburg 11. Jun 2011 10:26

AW: Wohin mit den Nicht-Visuellen Komponenten?
 
Merci! :wink:

Gruß
Jazzman

Ralf Kaiser 11. Jun 2011 10:36

AW: Wohin mit den Nicht-Visuellen Komponenten?
 
Zitat:

Zitat von Stevie (Beitrag 1105813)
Ein ganz klares: Kommt drauf an. Komponenten, die primär für GUI Funktionalitäten zuständig sind (dazu würde ich z.B. eine ActionList zählen) dann gehören sie für mich auf die Form.

Das sehe ich ein wenig anders.

Also gerade Actionlisten enthalten, zumindest meiner Meinung nach, doch grosse Teile des Business-Logik. Fügt man diese in ein Datenmodul ein so hat man die Logik in diesem Modul "gesammelt" und von der GUI, also dem Formular, getrennt.

(wobei z.B. OnUpdate-Methoden eventuell da eine "Grauzone" darstellen)

jaenicke 11. Jun 2011 11:04

AW: Wohin mit den Nicht-Visuellen Komponenten?
 
Zitat:

Zitat von mkinzler (Beitrag 1105809)
Dann muss man aber auch alle Einstellungen im Code setzen

Richtig, und das ist auch gut so. Sonst wundert man sich plötzlich warum irgendetwas nicht mehr geht, dabei hat nur jemand aus Versehen eine Eigenschaft umgestellt.

Bei größeren Projekten wird das allerdings auch unübersichtlich, wenn man das nicht gut kapselt. Deshalb ist es nicht so eindeutig was wo sinnvoll ist...

Klar ist jedenfalls eins:
Um die Oberflächen an sich von deren Logik sowie der Businesslogik und den Daten zu trennen, macht es Sinn alles auszulagern was nur geht. Wenn man das über mehrere Schichten macht, kann man leicht die Oberfläche auswechseln ohne deren Logik mit auswechseln zu müssen.

// EDIT:
Zitat:

Zitat von Alfi001 (Beitrag 1105815)
Also gerade Actionlisten enthalten, zumindest meiner Meinung nach, doch grosse Teile des Business-Logik.

Naja, eigentlich ja nicht direkt. Die entsprechenden Handler geben das ja nur (etwas aufbereitet) an die eigentliche Oberflächenbehandlung weiter.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:48 Uhr.
Seite 1 von 3  1 23      

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