Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   C# Variablennamen in C# (https://www.delphipraxis.net/64044-variablennamen-c.html)

Pseudemys Nelsoni 26. Feb 2006 17:18


Variablennamen in C#
 
Moin,

Wie würdet ihr ein Objekt der Klasse "Me" nennen?

In Delphi hätte ich die Klasse schlicht "TMe" und das Objekt "Me" genannt.... Nun denn, dem Styleguide nach soll eine Klasse keinen Prä-/Suffix haben... Wie würdet ihr hier das Objekt der Klasse nennen? Ich brauch da nur mal nen Tipp, ist mir schon klar, dass ich alles als Namen nehmen kann...

Christian S. 26. Feb 2006 17:25

Re: Variablennamen in C#
 
Hm. Kommt doch irgendwie immer auf den aktuellen Fall an. Wenn ich eine Klasse "Auto" habe, dann kann ich die Instanzen "Opel" und "Ford" nennen. Wenn eine Instanz gerade keine besondere Bedeutung hat (also z.B. in einer foreach-Schleife) würde ich das Dingen "aAuto" (also "ein Auto") nennen.

Weiß allerdings nicht, ob das nach dem Styleguide ist. :gruebel:

Pseudemys Nelsoni 26. Feb 2006 17:29

Re: Variablennamen in C#
 
Moin Christian,

hm, das weiss ich leider auch nicht ;)

Im Styleguide steht:

Zitat:

Klassenvariablen und Parameter
Beim Benennen von Klassenvariablen und Parametern von Methoden sollten Sie folgende Regeln beachten.

Verwenden Sie beschreibende Namen, welche die Bedeutung (und eventuell auch den Typ) der Klassenvariable beziehungsweise des Parameters erklären. Geben Sie im Zweifelsfall der Bedeutung Vorzug vor dem Typ.
Verwenden Sie Camel casing für Klassenvariablen und Parameter von Methoden.
Hm. Ansonsten mache ich es wie Du ;)

Heffalump 26. Feb 2006 17:38

Re: Variablennamen in C#
 
Was stört Dich daran die Klasse weiterhin TMe zu nennen? Wichtig ist doch, das Du un Deine "Umwelt" damit arbeiten kann und das alles ordentlich dokumentiert ist.

Elvis 26. Feb 2006 17:53

Re: Variablennamen in C#
 
Zitat:

Zitat von Heffalump
Was stört Dich daran die Klasse weiterhin TMe zu nennen? Wichtig ist doch, das Du un Deine "Umwelt" damit arbeiten kann und das alles ordentlich dokumentiert ist.

Richtig, die Umwelt hält sich an die Richtlinien für .Net APIs. Somit werden TDingens und ähnliche hungarian "Encryptions" nicht gerade auf freundliche Resonanz stoßen. ;)

@Pseudo

Wo ist denn eigentlich dein Problem? Der Compiler der meisten .Net Spracen ist schlau genug um einen Typen von eine Variablen zu unterscheiden.
Das hier funktioniert absolut problemlos:
Code:
Miep Miep = new Miep();
Dank einer modernen IDE bekommst du auch für Typen ein anderes Highlighting als für die Variable. ;)

Pseudemys Nelsoni 26. Feb 2006 17:54

Re: Variablennamen in C#
 
Moin Heffalump,

ich halte mich immer gern an den Standard ;) Ich weiss, klingt doof ;)


@Elvis: Ah perfekt! Der Delphi-Compiler war eben nire so schlau, deshalb wusste ich das nicht *g*.

Wie sieht das mit dem Zugriff auf die Variable aus? Was hat Vorrang, Klasse oder Objekt? Wenn ich z.b Miep. schreibe, bekomme ich dann die Klassenmethoden der Klasse oder die Felder des Objekts?

Elvis 26. Feb 2006 18:00

Re: Variablennamen in C#
 
Zitat:

Zitat von Pseudemys Nelsoni
Wie sieht das mit dem Zugriff auf die Variable aus? Was hat Vorrang, Klasse oder Objekt? Wenn ich z.b Miep. schreibe, bekomme ich dann die Klassenmethoden der Klasse oder die Felder des Objekts?

Beides...
Es wird einfch immer die passende Verwendung gesucht. Da es C# sowieo nicht verkraftet wenn eine gleichnamige Methode als statisch und als instanz mit gleicher Signatur exitiert, kannst du dich da auch nicht verhaspeln.

Pseudemys Nelsoni 26. Feb 2006 18:03

Re: Variablennamen in C#
 
Danke :D

Christian S. 26. Feb 2006 18:11

Re: Variablennamen in C#
 
Und wenn Du mal nicht sicher bist, was der Compiler meint, was verwendet wird: Maus drüber halten, Hint zeigt an, was es ist ;-)

Pseudemys Nelsoni 26. Feb 2006 18:26

Re: Variablennamen in C#
 
Wird gemacht! :). Danke

Cicaro 4. Mai 2006 12:05

Re: Variablennamen in C#
 
Zitat:

Zitat von Pseudemys Nelsoni
Wie würdet ihr ein Objekt der Klasse "Me" nennen?

Ohne groß nachzudenken würde ich eine allgemeine Klasse mit einem allgemeineren Namen als TMe implementieren (z.B.: TPerson). Dann können meine Objecte Me, ich, du, er, sie, es, ... oder auch schlicht Person heißen. Außerdem war das "T" vor einem Datentyp-Namen meiner Meinung nach so gedacht, dass man sofort weiß: "Aha, TMe oder TPerson ist ein Datentyp (Klasse)."

Standard bei Delphi (falls es sowas überhaupt gibt) sind die fertigen Klassen und Variablen. Da kann man sich vieles abgucken - auch was den Stil angeht.

Edit: ach ja, ich bezieh mich auf Delphi. In C bis C++ ist sowieso alles unübersichtlich.

Khabarakh 4. Mai 2006 12:25

Re: Variablennamen in C#
 
Zitat:

Zitat von Cicaro
Edit: ach ja, ich bezieh mich auf Delphi. In C bis C++ ist sowieso alles unübersichtlich.

Wie kommst du denn nun auf C (diese dämliche Verallgemeinerung überlese ich mal)?
Hier geht es weder um C++/CLI noch Delphi, sondern C#. Und zu dieser Sprache hat Elvis das Thema eigentlich schon geklärt.


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