Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Lasst ihr nicht bentutzt Units im Programm? (https://www.delphipraxis.net/21544-lasst-ihr-nicht-bentutzt-units-im-programm.html)

Nicolai1234 4. Mai 2004 17:16


Lasst ihr nicht bentutzt Units im Programm?
 
Wenn ich mein Delphi starte, steht in der Uses-Klausel folgendes:
Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;
Wenn ihr nicht alle braucht, lasst ihr sie dann tritzdem drin?
Ich achte darauf eigentlich garnicht, aber ich habe überlegt, wie viel Kapazität eine Unit so wegnimmt! Gibt es da irgendwelche KB-Zahlen?

Wie kann man eigentlich einzelne funktionen aus den Units "isolieren", dann könnte man sich nämlich eine eigende mit allem nötigen bauen!

Christian Seehase 4. Mai 2004 17:18

Re: Lasst ihr nicht bentutzt Units im Programm?
 
Moin Nicolai,

meist gehört bei mir als eine der letzten Aktionen eine Bereinigung der uses Abschnitte dazu.
Allein schon der Übersicht halber.

SirThornberry 4. Mai 2004 17:19

Re: Lasst ihr nicht bentutzt Units im Programm?
 
Einzelne Funktionen aus den Units isolieren sieht im prinzip so aus das du sie einfach abschreiben musst und in eine eigene unit packen. Allerdings musst du dann auch alle vorgänger klassen von der die eigentlich klasse abgeleitet ist mit isolieren und das wäre nen riesiger aufwand. Zudem benutzen einige Klassen andere Klassen. Beispiel ist SpinEdit unter Sampels. Da werden auch buttons oder so benötigt. das heißt du müsstest dann auch die buttons + die Textfeld-unit isolieren incl deren vorgänger...

glkgereon 4. Mai 2004 20:15

Re: Lasst ihr nicht bentutzt Units im Programm?
 
jo, ich habs mal versucht, hab mit der sysutil angefangen
es kam folgendes dabei raus:

nach ca. 2-3 stunden arbeit hatte ich für ein SEHR kleines pürojekt gerade mal ca. 100 zeilen rauswerfen können, von ich glaub über 5000 (sysutils, oder?)

es hätten noch sämtliche anderen angestanden

daher mein fazit aus der aktion:
sobald dein projekt mehr als nur ein edit und ein label umfasst, lohnt es sich nicht

das kommt ganz einfach daher, das alles in units geschrieben ist (nicht in dlls), und du daher ca 50.000 zeilen (glaub ich) einbinden musst

tommie-lie 4. Mai 2004 20:49

Re: Lasst ihr nicht bentutzt Units im Programm?
 
Zitat:

Zitat von glkbkk
das kommt ganz einfach daher, das alles in units geschrieben ist (nicht in dlls), und du daher ca 50.000 zeilen (glaub ich) einbinden musst

Aha, und dann sag mir mal, wie man die DLLs ohne passende Import-Units nutzen will...
Außerdem ist es gerade einer der Vorteile, daß man keine externen DLLs für Projekte benötigt.

Und zweitens wird nur das reinkompiliert, was auch ausgeführt wird. Von den ganzen Units, aus denen man keine Funktion aufruft (System.pas und SysInit.pas mal ausgenommen) werden also nur die Initialization -und Finalization-Abschnitte kompiliert. Trotzdem sollte man nicht verwendete Units nicht einbinden, eben weil die Initialization und die Finalization immernoch Platz in der EXE benötigen, selbst man man eigentlich nichts aus der Unit braucht.

Luckie 4. Mai 2004 22:33

Re: Lasst ihr nicht bentutzt Units im Programm?
 
Zitat:

Zitat von glkbkk
nach ca. 2-3 stunden arbeit hatte ich für ein SEHR kleines pürojekt gerade mal ca. 100 zeilen rauswerfen können, von ich glaub über 5000 (sysutils, oder?)

Was für Funktionen brauchtest du denn? Kuck doch mal hier: http://www.luckie-online.de/Downloads/DelphiUnits/

Robert Marquardt 5. Mai 2004 05:39

Re: Lasst ihr nicht bentutzt Units im Programm?
 
Es kommt auf die unit an die man rauswirft.
Code in initialization bzw finalization sections wird immer eingebunden egal ob man
etwas aus der Unit benutzt oder nicht.
Besonders bei VCL Units bewirken die Abhaengigkeiten zu anderen Units das recht viel Code eingebunden wird.

faux 5. Mai 2004 06:11

Re: Lasst ihr nicht bentutzt Units im Programm?
 
Homepage von Michael Puff
Fehler 500 - Interner Fehler.
Es ist ein interner Serverfehler aufgetreten.

Luckie 5. Mai 2004 06:19

Re: Lasst ihr nicht bentutzt Units im Programm?
 
Geht wieder.

Delphi_Fanatic 5. Mai 2004 06:36

Re: Lasst ihr nicht bentutzt Units im Programm?
 
Zitat:

Einzelne Funktionen aus den Units isolieren sieht im prinzip so aus das du sie einfach abschreiben musst und in eine eigene unit packen.
Zitat:

jo, ich habs mal versucht, hab mit der sysutil angefangen
Was ist denn das überhaupt für eine Idee ? :gruebel:

Schon mal drüber nachgedacht, wieviel Aufwand ein möglicher Delphi-Update in der Zukunft für Euch bedeutet, wenn Ihr jetzt anfangt, in den Delphi-eigenen Units wie 'Sysutils.pas' Änderungen durchzuführen ??

Im Übrigen werden in die exe sowieso nur diejenigen Quelltext-Teile rein kompiliert, die auch tatsächlich benötigt werden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:37 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