Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Reihenfolge der Units im Interface-Teil (nur VCL) (https://www.delphipraxis.net/210679-reihenfolge-der-units-im-interface-teil-nur-vcl.html)

Frickler 26. Mai 2022 14:59

Reihenfolge der Units im Interface-Teil (nur VCL)
 
Jahrelang habe ich immer erst (System.)SysUtils, (System.)Classes, ... und dann erst die (WinApi.)Windows usw in der Liste gehabt. Jetzt wollte ich mal den Unit-Sortierer von MMX ausprobieren, und da werden die WinApi-Units als erstes einsortiert. Ist das besser so? Habe ich das immer "falsch" gemacht?

dummzeuch 26. Mai 2022 16:39

AW: Reihenfolge der Units im Interface-Teil (nur VCL)
 
Zitat:

Zitat von Frickler (Beitrag 1506389)
Jahrelang habe ich immer erst (System.)SysUtils, (System.)Classes, ... und dann erst die (WinApi.)Windows usw in der Liste gehabt. Jetzt wollte ich mal den Unit-Sortierer von MMX ausprobieren, und da werden die WinApi-Units als erstes einsortiert. Ist das besser so? Habe ich das immer "falsch" gemacht?

Es gibt in den WinApi-Units (früher: Windows) diverse Deklarationen, die sich mit der VCL beißen. Worüber ich öfter stolpere ist TBitmap.

Ob WinApi vor SysUtils und Classes kommen muss, ist aber wohl eher Geschmacksache. Ich liste sie allerdings auch immer als erstes, schon seit >20 Jahren.

NicoleWagner 26. Mai 2022 19:03

AW: Reihenfolge der Units im Interface-Teil (nur VCL)
 
Irgendso ein Code-Analyser rügte mich einmal, wenn ich die Units nur schlicht zitierte und wies mich an, so "voll" zu zitieren:

uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
system.UITypes, System.StrUtils,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Buttons,........

Die Reihenfolge sollte keine Rolle spielen, was Codegültigkeit betrifft.
Allerdings meinen manche, man könnte da etwas an der Performance erreichen, wenn man sie "ideal" reiht.
(dafür gibt es Tools, die Reihenfolgen als gut behaupten)

Uwe Raabe 26. Mai 2022 21:19

AW: Reihenfolge der Units im Interface-Teil (nur VCL)
 
Zitat:

Zitat von Frickler (Beitrag 1506389)
Jetzt wollte ich mal den Unit-Sortierer von MMX ausprobieren, und da werden die WinApi-Units als erstes einsortiert. Ist das besser so? Habe ich das immer "falsch" gemacht?

In MMX ist die Reihenfolge für jedes Projekt individuell konfigurierbar. Der Default ist an die Defaultwerte in Unit Namespaces angelehnt.

Frickler 31. Mai 2022 08:35

AW: Reihenfolge der Units im Interface-Teil (nur VCL)
 
Danke an alle.

Zitat:

Zitat von Uwe Raabe (Beitrag 1506404)
In MMX ist die Reihenfolge für jedes Projekt individuell konfigurierbar. Der Default ist an die Defaultwerte in Unit Namespaces angelehnt.

Gilt aber nur für Unitnamen mit Punkten drin, habe ich gemerkt. Ich wollte vor meinen eigenen Units noch JVcl und Jcl einsortieren lassen, habe also "Jv" mit in die Liste geschrieben; das wird aber ignoriert.

Uwe Raabe 31. Mai 2022 09:03

AW: Reihenfolge der Units im Interface-Teil (nur VCL)
 
Dann sind Wildcards notwendig: Jv*

Frickler 31. Mai 2022 11:07

AW: Reihenfolge der Units im Interface-Teil (nur VCL)
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1506545)
Dann sind Wildcards notwendig: Jv*

Ach phantastisch, es funktioniert. Danke!


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