![]() |
AW: Projektstruktur (nicht alles in einem Ordner)
Die Pseudo-Namespaces mit . im Dateinamen haben noch den Vorteil, dass man dort Defaultnamespaces als Prefix verwenden kann.
Mir wäre von der Struktur im Verzeichnis es lieber, wenn man die auch als Postfix nutzen könnte. Wird z.B. für VCL oder FMX verwendet > Forms -> VCL.Forms oder FMX.Forms oder für dein "einfachen" Umstieg bei altem Code. > Windows -> Winapi.Windows > Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell My.Unit ins Uses schreiben und je nach Ziel wird das verwendet My.Unit.Windows My.Unit.iOS My.Unit.Linux So geht es, aber es ist sch*** Windows.My.Unit iOS.My.Unit Linux.My.Unit |
AW: Projektstruktur (nicht alles in einem Ordner)
@himitsu
Verstehe nicht genau was Du meinst, sollte etwa das hier My.Unit ins Uses schreiben und je nach Ziel wird das verwendet My.Unit.Windows My.Unit.iOS My.Unit.Linux sich das richtige Unit raussuchen, je nach OS, ohne {$IF} ? Meinst Du das sowas jetzt schon in Delphi irgendwie geht, neee, das kann doch nicht sein, oder ? Falls doch wäre das natürlich super. Ich nutze auch Postfixes, aber noch mehr als nur FMX/VCL. Vorne steht bei mir die Funktion, also das was ich erstmal eigentlich will, weiter nach hinten kommen dann die Spezialisierungen. Media.Audio.Play Media.Audio.Play.Win Media.Audio.Play.Macos Media.Audio.Rec Media.Audio.Rec.Win Media.Audio.Rec.Macos notfalls kann ich dahinter dann noch das Framework schreiben FMX/VCL Media.Audio.Play Media.Audio.Play.Win.VCL Media.Audio.Play.Win.FMX Media.Audio.Play.Macos.FMX Media.Audio.Rec Media.Audio.Rec.Win.VCL Media.Audio.Rec.Win.FMX Media.Audio.Rec.Macos.FMX das ist aber meist schon überflüssig (z.B. weil Macos i.d.R. nur FMX sein kann ). Ok, jetzt lassen wir mal CrossVCL, TMS WebCore, FNC, ... aussen vor Wichtig finde ich bei der Nomenklatur dass das eigentlich Entscheidende, die Funktion, vorne steht: Media.Audio.Play Das mag Vielen wie umgekehrt polnische Notation vorkommen, ist aber in der Praxis sehr hilfreich. (und UPN war der normalen Notation logisch überlegen, auch wenn ich es damals sehr gehasst habe :stupid:). |
AW: Projektstruktur (nicht alles in einem Ordner)
Projektoptionen > Erzeugen > Delphi-Compiler : Unit-Gültigkeitsnamen
Da in der Mitte des langen Textes versteckt sich standardmäßig ein
Delphi-Quellcode:
bei neuen VCL-Projekten
;Vcl;
und
Delphi-Quellcode:
bei den geräteübergreifenden Projekten.
;Fmx;
(beim Upgreade alter Projektdateien wird das aber nicht automatisch eingefügt, drum heißt es dann gern "Unit Forms nicht gefunden") Dadurch wird beim Kompilieren, wenn eine Unit
Delphi-Quellcode:
nicht gefunden wird, entsprechend auch nach
MyUnit
Delphi-Quellcode:
oder
Vcl.MyUnit
Delphi-Quellcode:
gesucht,
Fmx.MyUnit
drum kannst du
Delphi-Quellcode:
schreiben und kompiliert wird mit
uses Forms;
Delphi-Quellcode:
, bei einem VCL-Projekt.
Vcl.Forms
Dort kann man auch Eigenes einfügen, für eigene/fremde Bibliotheken. Für Bibliotheks-Präfix funktioniert das super, aber von der Sortierung im Verzeichnis und für die Codevervollständigung, wäre es als Platform-Suffix übersichtlicher. Zitat:
|
AW: Projektstruktur (nicht alles in einem Ordner)
@himitsu
Aha, man lernt nie aus. Ich denke man könnte sich alleine 1 Jahr mit der IDE un deren versteckten Funktionen beschäftigen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:43 Uhr. |
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