Wie kommt man zu Kamel-Fall, wo aufeinanderfolgende Wörter Zahlen haben?

21

Ich frage mich nur, ob jemand eine gute Konvention hat, die er in diesem Eck-Eck-Fall befolgen kann. Ich benutze wirklich Java, aber ich dachte mir, dass die C # -Völker auch einen guten Einblick haben könnten.

Angenommen, ich versuche, eine Klasse zu benennen, bei der zwei aufeinanderfolgende Wörter im Klassennamen numerisch sind (beachten Sie, dass dieselbe Frage auch nach Bezeichnernamen gestellt werden könnte). Ich kann kein gutes Beispiel finden, aber ich denke an etwas wie "IEEE 802 16-Bit-Wert".

Das Kombinieren aufeinanderfolgender Akronyme ist möglich, wenn Sie Klassennamen wie akzeptieren HttpUrlConnection. Aber ich muss mich ein wenig übergeben, wenn ich daran denke, die Klasse zu benennen IEEE80216BitValue. Wenn ich mich entscheiden müsste, würde ich sagen, das ist noch schlimmer als das, IEEE802_16BitValuewas nach einem schlimmen Fehler aussieht. Für kleine Zahlen würde ich überlegen, IEEE802SixteenBitValueaber das skaliert nicht so gut.

Hat da draußen jemand eine Konvention? Anscheinend sind die Namensrichtlinien von Microsoft die einzigen, die die Abkürzung so ausführlich beschreiben, dass die Aufgabe erledigt werden kann, aber niemand hat Nummern in Klassennamen angesprochen.

Rob ich
quelle
1
Wahrscheinlich nicht zum Thema SO, immer noch eine interessante Frage.
CodesInChaos
3
Ich würde wahrscheinlich mitgehen, _wenn nötig. Alles andere, was mir einfällt (außer nach Möglichkeit umzubestellen), ist noch schlimmer. In Ihrem Beispiel Ieee802Value16Bitist das, was ich in Ihrem Beispiel tun würde.
CodesInChaos
Hoppla. Ich nahm an, dass es ein Namenskonventions-Tag gab, das thematisch nah genug war, um zumindest nachzufragen. :)
Einfach: Kein Kamelkoffer verwenden. Heute gibt es keinen Grund dafür, da Linker in externen Namen nicht auf 6 Zeichen beschränkt sind. Ich vermeide eingebettete Großbuchstaben in Namen; Für meine prosaorientierten Augen sind sie zu umständlich, um bequem gelesen zu werden. Sie klirren wie schlechte Typografie. - Rob Pike, "Hinweise zur Programmierung in C"
4
@ Kaz Wir sprechen hier über C # / Java. Auch Schönheit liegt im Auge des Betrachters. Persönlich finde ich _das hässlicher als camelCase oder PascalCase.
CodesInChaos

Antworten:

12

Ich würde einen neuen Variablennamen finden, anstatt herauszufinden, welche Namenskonvention für eine Variable mit zwei Zahlen verwendet werden soll

Das heißt, wenn ich unbedingt eine doppelte Zahl in meinem Variablennamen verwenden MUSSTE und ich die Wörter / Zahlen nicht neu anordnen könnte, um etwas Vernünftiges zu finden, und absolut kein anderer Name würde Sinn machen, würde ich eine _zwischen verwenden zahlen

...

Eigentlich nehme ich es zurück, ich würde nur einen neuen Variablennamen finden :)

Rachel
quelle
7
+1 Wir machen Netzwerkgeräte am Laufen, daher würde man denken, dass standardbezogene Klassennamen häufig vorkommen, aber ich erinnere mich nicht, dass ich dieses Problem hatte, also habe ich unsere Codebasis durchgesehen. Anstelle von Präfixen wie IEEE802 verwenden wir esoterische Wörter wie "Ethernet" :-)
Karl Bielefeldt
1
Was ist mit SHA-512/256oder SHA3-256? Es fällt mir schwer, Namen zu finden, die keine enthalten _.
CodesInChaos
3

Ich persönlich würde mich für die Unterstreichungsroute entscheiden, z IEEE_802_16_BitValue. Dieses Q befasste sich derzeit mit der Modellierung einiger CPU-Architekturen und war ein gutes Timing :-)

Martijn Verburg
quelle
2

Ich habe einen Buchstaben verwendet, um fortlaufende Zahlen abzugrenzen. Für mich wäre es Ieee802x16bit( nicht IEEE802x16bit ). Ich denke, es ist weniger ablenkend als eine einsame Bar mitten in einem Dschungel aus Buchstaben und Ziffern.

Elende Variable
quelle