AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Welche eingebundene Unit brauche ich nicht?
Thema durchsuchen
Ansicht
Themen-Optionen

Welche eingebundene Unit brauche ich nicht?

Ein Thema von Taladan · begonnen am 16. Jun 2005 · letzter Beitrag vom 17. Jun 2005
Antwort Antwort
Benutzerbild von Taladan
Taladan

Registriert seit: 5. Aug 2003
Ort: Osnabrück
505 Beiträge
 
Delphi 2005 Professional
 
#1

Welche eingebundene Unit brauche ich nicht?

  Alt 16. Jun 2005, 22:22
Wie kann ich raus finden, welche eingebunden Units meine Units wirklich brauchen? Durch viel rumgeteste hab ich da bestimmt viel unnützes Zeugs eingebunden. Jedoch will ich nicht unbedingt bei 30 Units jede einzeln rausnemen um zu schauen ob der Compiler meckert. Oder ist es unwichtig, ob und wie viele Units zusätzlich eingeschlossen sind (Performance, Größe der .exe)?
Marco
Wer Rechtschreibfehler findet, der darf sie behalten

Carpe Diem - Nutze den Tag (und zwar den ganzen!)
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#2

Re: Welche eingebundene Unit brauche ich nicht?

  Alt 16. Jun 2005, 22:26
Es gibt da ein Tool.. ich glaub das heisst Icarus Uses List analyzer. Google mal danach. Der analysiert dein komplettes Projekt und sagt dir, welche uses du nicht brauchst und welche du vom declaration in den implementation - Teil verschieben kannst.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Brüggendiek

Registriert seit: 13. Dez 2002
Ort: Dortmund
275 Beiträge
 
Delphi 5 Standard
 
#3

Re: Welche eingebundene Unit brauche ich nicht?

  Alt 17. Jun 2005, 02:16
Hallo Taladan!

Die Frage, ob eine überflüssige Unit negative Auswirkungen hat, kann man nicht pauschal beantworten.

Wenn ein Unit einen Initialisation- und/oder Finalisation-Teil hat, wird dieser beim Programmstart bzw. Programmende durchlaufen. Daraus folgt, daß der Linker den zugehörigen Code in die EXE packen muß.
Routinen, die nicht aufgerufen werden, tauchen auch in der EXE nicht auf.

Unnötig eingebundene Units mit Anfangs- und Endecode blähen also die EXE unnötig auf und verzögern Programmstart/Programmende. Andere Units verlängern allenfalls die Compile-Zeit, weil sie unter Umständen neu übersetzt werden müssen, haben aber keinen Einfluß auf das fertige Programm.

Das schon erwähnte Icarus findest Du hier (ganz unten auf der Seite).

Gruß

Dietmar Brüggendiek
Edit: Dicke Finger, kleine Tasten - grrrrr
Dietmar Brüggendiek
Die 6 Probleme des Programmierers: 1. dauert das länger, als man 2. glaubt, 3. geht das nicht so, wie man sich das 4. schlau überlegt hat, und 5. sitzt der Fehler da, wo man ihn 6. zuletzt sucht
  Mit Zitat antworten Zitat
Antwort Antwort


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 20:24 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