Sollte ich meine Konstanten groß schreiben?

7

Was denkt ihr? Sollen Konstanten aktiviert werden? Oder ist das eine archaische Praxis? Also ...

%Vor%

vs.

%Vor%     
Tim Merrifield 19.11.2008, 22:23
quelle

13 Antworten

12

Sie sollten tun, was die Konvention in der Sprache / Plattform ist, die Sie verwenden. Zum Beispiel sollten in .NET-Konstanten pascal cased, z. B.

%Vor%

In anderen Sprachen ist es wahrscheinlich anders.

    
Greg Beech 19.11.2008 22:26
quelle
5

Effective Java empfiehlt Ihnen Groß- und Unterstriche für static final -Werte, die unveränderlich sind. Ansonsten sind sie nicht konstant.

d.

%Vor%

Hier ist das Zitat:

  

Diese Felder haben per Konvention Namen, die aus Großbuchstaben bestehen, wobei die Wörter durch Unterstriche getrennt sind. Es ist wichtig, dass diese Felder entweder primitive Werte oder Verweise auf unveränderbare Objekte enthalten.

... andernfalls, wenn veränderbare Objekte wie Konstanten aussehen, werden sie als solche verwirrt.

    
jamesh 19.11.2008 23:44
quelle
4

Die All-Caps-Konvention wurde für Makros erfunden, wo es einen guten Grund gab zu schreien: "Achtung! Ein Makro!" (Es gibt viele Arten zu vermasseln.) Eine Konstante auf der Ebene der Sprache ist ein zäher Tier, aber die Konvention blieb bestehen.

Benutze dein Urteilsvermögen; Wo es eine starke Konvention gibt, wie ich es in der Java-Welt vermute, ist es eine Verschwendung von Energie, um dagegen anzukämpfen.

    
Darius Bacon 19.11.2008 23:36
quelle
2

In C ++ sollten Sie zumindest vermeiden, Groß- und Kleinschreibung zu verwenden, um Verwechslungen mit #defines zu vermeiden, die kanonisch groß geschrieben werden können.

    
Kluge 19.11.2008 22:25
quelle
2

Eigentlich mag das nicht sprachunabhängig sein. Einige Sprachen haben eine Tradition, Großbuchstaben zu verwenden, andere nicht. Zum Beispiel ist in Großbuchstaben C ++ in der Regel für Enums und definiert nur, während Java Großbuchstaben liberaler verwendet.

    
Marcin 19.11.2008 22:26
quelle
2

Persönliches Gefühl ist, dass Benennungskonventionen etwas bedeuten sollten und gut sind, solange sie Bedeutung liefern. Anders als das Beste ist es, Konventionen der Sprache zu befolgen, in der Sie arbeiten. Ansonsten, anstatt für den Leser zu vereinfachen, verdecken Sie (leicht). Zum Beispiel in Java

%Vor%

ist eine gebräuchliche Methode, um statische Finals zu schreiben. Andere Sprachen haben unterschiedliche Stile.

    
Steve B. 19.11.2008 22:28
quelle
1

Wenn Sie eine vorhandene Codebasis ergänzen oder beibehalten, tun Sie, was sie tun, um die Leute nicht zu verwirren. Wenn dies ein neues Projekt ist, vereinbaren Sie eine Vereinbarung mit Ihrem Team und machen Sie das.

Wenn es Ihr eigenes Projekt ist, tun Sie, was Sie gewohnt sind.

    
Jeffrey Martinez 19.11.2008 22:26
quelle
1

Ich kapitalisiere meine Konstanten nicht groß. In der Tat verwende ich "const" so proaktiv, dass es keinen Sinn macht, sie zu kapitalisieren. Zum Beispiel:

%Vor%

Diese Verwendung von 'const' mag nutzlos erscheinen, aber es gibt Sicherheit, dass 'Größe' eine Momentaufnahme der Größe des Vektors zu diesem Zeitpunkt ist. Der Compiler wird sicherstellen, dass dies für den gesamten Bereich gilt.

Ich kapitalisiere jedoch meine MACROS. Aber die Verwendung von #define zum Deklarieren von Konstanten ist ein anderes Thema.

    
Martin Cote 19.11.2008 22:29
quelle
1

Der IDesign C # -Codierungsstandard empfiehlt Pascal für Konstanten.

Lesen Sie auch diese verwandte Frage .

    
Chris Fulstow 19.11.2008 23:27
quelle
0

Das ist der offizielle und de-facto Standard für die Benennung von Konstanten in der Java-Sprache. Wenn Sie also Java nicht als archaische Sprache betrachten, ist die Antwort vermutlich nein.

    
Dónal 19.11.2008 22:26
quelle
0

Welche Sprache?

Nein, aber Sie sollten sie in eine Klasse oder einen Namespace einfügen.

    
FigBug 19.11.2008 22:26
quelle
0

Ich verwende einen Unterstrich für .Net, Java und PHP.

    
Patrick Desjardins 19.11.2008 22:29
quelle
0

Ich bevorzuge Konstanten als Großbuchstaben, es sei denn, es gibt einen Grund dafür.

    
Paul Nathan 19.11.2008 22:29
quelle