Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Projektplanung und -Management (https://www.delphipraxis.net/85-projektplanung-und-management/)
-   -   (Formular-)Handling größerer Projekte (https://www.delphipraxis.net/184235-formular-handling-groesserer-projekte.html)

bcvs 12. Mär 2015 17:15

AW: (Formular-)Handling größerer Projekte
 
Zitat:

Zitat von Delbor (Beitrag 1293212)
Kann es sein, dass dieses Release erst in neueren Delphiversionen integriert wurde?

Nein, das war schon immer so.

mm1256 12. Mär 2015 17:27

AW: (Formular-)Handling größerer Projekte
 
Zitat:

Zitat von Delbor (Beitrag 1293261)
Daran hab ich erstmal nicht gedacht - mein wirklich 'rotes Tuch' ist denn auch zum Bleistift Findcomponent, das die kompletten Komponenten eines Containers durchläuft.....

Genauso oder zumindest so ähnlich hab ich gedacht, als ich das Beispiel von BadenPower zum ersten mal gelesen habe. Daraufhin meine größte dpr mit den schon zitierten 100+ Formularen aufgemacht, ein paar Fenster geöffnet und dann mal gecheckt, wie hoch Application.ComponentCount ist. Nach SirRufo's Kommentar ist mir dann auch schnell klar geworden, warum das so niedrig ist. Wenn man in der dpr nur ein einziges Formular (das Hauptformular) erzeugt, dann ist das wirklich eine prima Sache, und das von dir zitierte "rote Tuch" ist dann flugs samt den Vorurteilen verschwunden.

Was mich abschließend mal zu dem Kommentar verleitet: Man findet im WEB tausende von Tutorials über wie und was und überhaupt...aber wenn es mal um den Feinschliff größerer Projekte geht, wird es ganz schnell eng. Nur gut, dass es die DP gibt :thumb:

Hansa 12. Mär 2015 20:30

AW: (Formular-)Handling größerer Projekte
 
Bei grösseren Projekten machst Du folgendes: du baust ein Form mit vorgefertigtem caFree im OnClose. Dieses schiebst du in die Objektablage. Ab dann nur noch dieses Formulur vererben,d.h. das caFree ist standardmässig schon da und fertig. Release, free etc. wird dann nicht benötigt. Zumindest nicht bei meinem Programm mit ca, 200 Forms.

BadenPower 12. Mär 2015 21:10

AW: (Formular-)Handling größerer Projekte
 
Zitat:

Zitat von mm1256 (Beitrag 1293270)
Man findet im WEB tausende von Tutorials über wie und was und überhaupt...aber wenn es mal um den Feinschliff größerer Projekte geht, wird es ganz schnell eng. Nur gut, dass es die DP gibt :thumb:

Als ich mir dieses Grundgerüst herausgearbeitet habe, da gab es noch gar kein Internet.

Ich glaube dies war beim Erscheinen von Delphi4. Ob ich es schon bei D2 oder gar D1 eingesetzt habe glaube ich aber eher nicht.

Früher war man noch mehr oder weniger wirklich gezwungen sich die Handbücher (7 Stück bei D4) durchzulessen, in welchen doch tatsächlich alle Funktionen beschrieben waren. Das Problem heutzutage ist, dass die meisten User die beigefügte Hilfe nicht von vorne bis hinten durchlesen und daher viele Dinge überhaupt nicht kennen können.

mm1256 13. Mär 2015 06:35

AW: (Formular-)Handling größerer Projekte
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Hansa (Beitrag 1293288)
Bei grösseren Projekten machst Du folgendes: du baust ein Form mit vorgefertigtem caFree im OnClose.....

Das ist ja eigentlich bei größeren Projekten eine Selbstverständlichkeit. ABER: "ein Form" reicht in der Praxis nicht. Ich hab 14 MDI-Fenster in 6 Programmodulen die alle ihre grundlegenden Eigenschaften von einem Vorfahren erben. Das Selbe bei den etwa 40 modalen Dialogen, die eine Interaktion des Users erwarten, den etwa 10 Dialogen welche den Ausdruck steuern (Druck-Voreinstellungen), den etwa 50 modalen Fenstern die programmspezifische Funktionen ausführen (es geht um ein WWS).....und so weiter.

Ich hab soeben mal die Fenster zusammengezählt: 14 MDI, 27 Hauptformulare, 86 modale Dialoge, 121 Formulare mit Hilfsroutinen und dergleichen (Dateisuche, Dateien zippen, Fortschrittanzeigen, Fileviewer, Datenbank-Tools, Rechner, Scanner, Bilderanzeige...). Da sieht man erst, was sich im Lauf der Jahre in einem einzigen Projekt alles ansammelt. Die Vererbung von Formulareigenschaften (welche ja durch die Delphi-IDE wunderbar unterstützt wird) macht man sich da zwangsweise zu Nutzen. Anders geht es ja auch gar nicht. Es sei denn, man legt Wert darauf, dass das Installationsprogramm nicht mehr auf eine CD passt, nur mehr auf DVD. :cyclops:

Ein Beispiel für die Vererbung aus zwei unterschiedlichen Programmteilen habe ich (falls es jemand interessiert) angehängt. Der Linke ist ein Dialog im Hauptprogramm zur Datensicherung und der Rechte der Startdialog für mein Installationsprogramm (natürlich selber programmiert). Also zwei sehr unterschiedliche Bereiche. Der neue Kunde soll bereits bei der Installation auf die Programmoptik vorbereitet werden und derjenige der ein Update installiert, erkennt auf den ersten Blick um was es geht.

Der praktische Effekt: der Anwender hat in vielen Bereichen eine einheitliche Oberfläche. Der technische Aspekt: Es werden viele Ressourcen eingespart. Das bringt mich aber zurück zu einer der Ausgangsfragen:

Zitat:

Zitat von mm1256 (Beitrag 1293006)
1) Gibt es hinsichtlich einer optimalen Exe-Größe bei der Include-Datei noch Optimierungsmöglichkeiten?

Hierzu hat sich noch niemand geäußert...kann ich daraus ableiten, dass hier nichts mehr zu machen ist? Mir geht es weniger um den Platzbedarf der kompletten Installation sondern um die Größe des Download-Image. Die möchte ich so klein wie möglich halten und da sind die Exe-Größen schon mit ausschlaggebend.

Dalai 13. Mär 2015 13:19

AW: (Formular-)Handling größerer Projekte
 
Zitat:

Zitat von mm1256 (Beitrag 1293315)
Zitat:

Zitat von mm1256 (Beitrag 1293006)
1) Gibt es hinsichtlich einer optimalen Exe-Größe bei der Include-Datei noch Optimierungsmöglichkeiten?

Hierzu hat sich noch niemand geäußert...kann ich daraus ableiten, dass hier nichts mehr zu machen ist?

Falls du keine erweiterte RTTI verwendest, kann man mit {$WEAKLINKRTTI ON} noch etwas rausholen (mehr Details z.B. in meinem Thema Nachteile WEAKLINKRTTI?). Bei mir hat das ~10% eingespart (auf ~1,5 MiB Dateigröße).

MfG Dalai

Hansa 13. Mär 2015 14:33

AW: (Formular-)Handling größerer Projekte
 
Zitat:

Zitat von mm1256 (Beitrag 1293315)
Zitat:

Zitat von Hansa (Beitrag 1293288)
Bei grösseren Projekten machst Du folgendes: du baust ein Form mit vorgefertigtem caFree im OnClose.....

Das ist ja eigentlich bei größeren Projekten eine Selbstverständlichkeit. ABER: "ein Form" reicht in der Praxis nicht.

Wer redet von einer einzigen Form ? Ich denke es geht um : "(Formular-)Handling größerer Projekte". Und da ist eben die Formularvererbung immens wichtig. Du wirst ja wohl bei 121 Hilf-Forms nicht 121mal ein OnkeyPress etc. programmieren wollen ? Kann aber auch sein, dass du zu den 99% gehörst, die nicht mal wissen was Objektablage eigentlich heisst. Sogar Marco Cantu wundert sich, wie wenig das benutzt wird. Hat er mir jedenfalls so gesagt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:39 Uhr.
Seite 4 von 4   « Erste     234   

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