AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi für .NET <> Delphi Win32

Ein Thema von sir-archimedes · begonnen am 17. Jan 2006 · letzter Beitrag vom 18. Jan 2006
 
peteress

Registriert seit: 6. Sep 2004
49 Beiträge
 
#15

Re: Delphi für .NET <> Delphi Win32

  Alt 17. Jan 2006, 20:33
Also halten wir fest:

Delphi beherrscht Namespaces, macht diese aber nicht von Dateigrenzen unabhängig. Ich wäre als Projektleiter, deseen Existenz von Dingen wie Qualität, Wartbarkeit des erzeugten Codes abhängt, und der Vorhersagbarkeit von Kosten abhängt nicht so sicher, ob ich über die Form von Disziplin, die Delphi hier erzwingt, nicht doch eher glücklich sein sollte.

Dasgleiche gilt für die Verwendung von Schlüsselwörtern als Bezeichner. Es ist die Aufgabe, moderner Compiler nicht alles zuzulassen, was machbar ist. Das dürfte C# im Vergleich zu C++ ganz deutlich zeigen. Ob die Verwendung von Schlüsselwörtern als Bezeichner nicht aus gutem Grund verweigert wird, nämlich um den Pascalguidelines folgend, Wert auf die Lesbarkeit des Codes zu legen, muss dann halt jeder Entscheider, der die Kosten seiner Entscheidung verantworten muss, selber entscheiden.

Soweit das aufgrund der Sprachunabhängigkeit von .Net nowendig ist, kann Delphi aber sehr wohl Schlüsselwörter als Bezeichner verwenden.
Die .Net Guidelines werden damit doch erfüllt.


Zitat:
Erweiterte Bezeichner

Besonders bei der Programmierung in Delphi für .NET könnten Sie auf Bezeichner (z.B. Typen oder Methoden in Klassen) stoßen, die denselben Namen wie ein Delphi-Schlüsselwort haben. Eine Klasse könnte z.B. eine Methode mit dem Namen begin haben. Ein weiteres Beispiel ist die CLR-Klasse System.Type im Namespace System. Type ist ein Delphi-Schlüsselwort und darf nicht als Name für einen Bezeichner verwendet werden.
Wenn Sie den Bezeichner mit der vollständigen Namespace-Spezifikation qualifizieren, dann besteht kein Problem. Um beispielsweise die Klasse System.Type einzusetzen, müssen Sie ihren voll qualifizierten Namen angeben:
var
TMyType : System.Type; // Der voll qualifizierte Namespace wird verwendet, um
// die Doppeldeutigkeit mit dem Delphi-Schlüsselwort auszuschließen.
Der Ampersandoperator (&) kann als eine kürzere Alternative zum Auflösen der Doppeldeutigkeit zwischen Bezeichnern und Delphi-Schlüsselwörtern verwendet werden. Wenn Sie auf eine Methode oder einen Typ mit demselben Namen wie ein Delphi-Schlüsselwort stoßen, können Sie die Namespace-Spezifikation weglassen. Sie müssen dann aber dem Bezeichnernamen ein Ampersand voranstellen. Im folgenden Code wird z.B. ein Ampersand zur Unterscheidung der CLR-Klasse System.Type von dem Delphi-Schlüsselwort type verwendet.
var
TMyType : &Type; // Präfix '&' ist ok.
  Mit Zitat antworten Zitat
 


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 10:19 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