Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi uses Bereich (https://www.delphipraxis.net/51371-uses-bereich.html)

semo 11. Aug 2005 08:33

Re: uses Bereich
 
ich glaube da werden genau wie in eclipse vorschläge gemacht, bin mir da aber nicht mehr so sicher. musst du dir mal anschauen...

leddl 11. Aug 2005 08:35

Re: uses Bereich
 
:gruebel: Ich benutze die PE, aber das is mir bisher noch nich aufgefallen... Oder war das ein extra Menupunkt?

Master_RC 11. Aug 2005 08:52

Re: uses Bereich
 
Zitat:

Zitat von leddl
@Master: Inwiefern hilft das, die uses automatisch aufzuräumen? :gruebel:

das könnt ich mir bei den anderen posts auch denken, aber es ist enigstens ne notlösung ;)

vielleicht hilft es ja auch bei einem projekt aufzuschreiben (man habe den zettel erfunden), welche unit sman verwendet und welche rauskommen könnten, etc.
(iss jetzt auch net wirklich automatisch, aber immerhin ne nötlösung...)

Flocke 11. Aug 2005 08:58

Re: uses Bereich
 
Zitat:

Zitat von leddl
:gruebel: Ich möchte jetzt nichts falsches erzählen, aber ist das nich Hinz wie Kunz, wieviele Units in den uses stehen? Der Compiler schnappt sich doch immer nur das raus, was wirklich benötigt wird.

Nicht wenn die Units initialization und finalization benutzen!

s14 11. Aug 2005 09:01

Re: uses Bereich
 
Es gibt auch einen "Uses List Analyzer for Delphi".
Ist von Peganza und Freeware.

http://www.peganza.com

Steve 11. Aug 2005 09:05

Re: uses Bereich
 
Es gibt noch einen solchen Analyzer: [google]ICARUS "Uses List Analyzer"[/google] Hab den schon oft eingesetzt und noch nie Probleme damit gehabt, hat immer einwandfrei funktioniert :thumb:

Gruß
Stephan :dance:


edit: Unfug, ich seh grad, dass Icarus genau die Freeware-Version bzw. einTeil des Pascal-Analyzers ist, die Peganza anbietet :wall:

DevilsCamp 11. Aug 2005 09:47

Re: uses Bereich
 
Es ist vollkommen Schnuppe, wie viele Units Du in der USES-Liste stehen hast.
Der Compiler holt sich aus den entsprechenden Units nur das, was wirklich benötigt wird.

Sonst wäre ja JEDES Programm schon mind. 1.5MB groß (eine leere NEUE Anwendung hat allerdings nur 361KB)

Diese Eigenschaft hatte Borland schon zu Turbo/Borland Pascal Zeiten eingebaut und weshalb sollte das rausfliegen?

Flocke 11. Aug 2005 09:52

Re: uses Bereich
 
Zitat:

Zitat von DevilsCamp
Es ist vollkommen Schnuppe, wie viele Units Du in der USES-Liste stehen hast.
Der Compiler holt sich aus den entsprechenden Units nur das, was wirklich benötigt wird.

Sonst wäre ja JEDES Programm schon mind. 1.5MB groß (eine leere NEUE Anwendung hat allerdings nur 361KB)

Diese Eigenschaft hatte Borland schon zu Turbo/Borland Pascal Zeiten eingebaut und weshalb sollte das rausfliegen?

Das ist (so formuliert) Unsinn!

Delphi hat einen intelligenten Linker, der sich aus jeder Unit nur den Code herausholt, der wirklich benötigt (d.h. referenziert) wird.

Allerdings trifft das auch auf den Code zu, der in den Units hinter initialization und finalization angegeben wird. Und insbesondere virtuelle Funktionen von referenzierten Klassen müssen immer übernommen werden, da weiß der Linker nämlich überhaupt nicht, ob die benutzt werden.

Das ist ja auch der Grund dafür, dass ein Non-VCL-Programm, wenn du die Unit Classes in die uses-Liste setzt, auf einmal fast 64k größer ist, ohne dass du sonst etwas am Code änderst.

DevilsCamp 11. Aug 2005 10:03

Re: uses Bereich
 
Habe ich doch gesagt:
Es wird nur das aus den Units geholt, was wirklich benötigt wird ;)


Ich habe es nur nicht so ausführlich erklärt...

Flocke 11. Aug 2005 10:13

Re: uses Bereich
 
Zitat:

Zitat von DevilsCamp
Habe ich doch gesagt

Nein!
Zitat:

Zitat von DevilsCamp
Es wird nur das aus den Units geholt, was wirklich benötigt wird

das stimmt zwar (wenn man von nicht benötigten virtuellen Funktion absieht), aber
Zitat:

Zitat von DevilsCamp
Es ist vollkommen Schnuppe, wie viele Units Du in der USES-Liste stehen hast.

das ist definitiv falsch. Wenn dem so wäre, dann könnte Borland (und würde vielleicht auch) den kompletten Bibliothekscode (System, SysUtils, Classes, Controls, Forms, usw.) in eine einzige Unit packen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:58 Uhr.
Seite 2 von 3     12 3      

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