Was sind die verschiedenen Arten von Fällen?


71

Ich interessiere mich für die verschiedenen Arten von Identifikatorfällen und wie die Leute sie nennen. Kennen Sie Ergänzungen zu dieser Liste oder andere alternative Namen?

  • myIdentifier: Kamelfall (zB in Java-Variablennamen)
  • MyIdentifier: Großer Kamelfall (z. B. in Java-Klassennamen)
  • my_identifier: Snake case (zB in Python-Variablennamen)
  • my-identifier: Kebab-Fall (zB in Schlägernamen)
  • myidentifier: Flat case (zB in Java-Paketnamen)
  • MY_IDENTIFIER: Großbuchstaben (z. B. in C-Konstantennamen)

24
My1d3nT1F13r: Leet Fall ^ _ ^
Laurent S.

3
Warum heißt es Kebab-Fall? Woher kommt der Name?

7
Stellen Sie sich einen Schaschlik vor, der durch die Kennung läuft.
Austin Cory Bart

7
Stellen Sie sich vor, ein Spieß wird durch die Kennung geführt, um die Antwort von @AustinCoryBart auf Schaschlik zu korrigieren . Der Bindestrich ( -) zwischen den Wörtern ähnelt dem Spieß, und die Wörter ähneln dem Fleisch und Gemüse auf dem Schaschlikspieß.
Brian Zelip

5
@AustinCoryBart shish (eigentlich şiş geschrieben) bedeutet Spieß auf Türkisch
Downhand

Antworten:


19

Namen sind entweder generisch, nach einer Sprache oder bunt; Die meisten haben keinen Standardnamen außerhalb einer bestimmten Community.

Es gibt viele Namen für diese Namenskonventionen (Namen für Namen!); siehe Namenskonvention: Mehrwortkennungen , insbesondere für CamelCase (UpperCamelCase, LowerCamelCase). Viele haben jedoch keinen Standardnamen. Betrachten Sie den Python- Styleguide PEP 0008 - er nennt sie mit generischen Namen wie "small_case_with_underscores".

Eine Konvention besteht darin, nach einer bekannten Verwendung zu benennen. Das führt zu:

  • PascalCase
  • MACRO_CASE (C-Präprozessor-Makros)

… Und schlägt diese Namen vor, die nicht weit verbreitet sind:

  • c_case (wird in K & R und in der Standardbibliothek verwendet, wie size_t)
  • Lisp-Fall, CSS-Fall
  • COBOL-CASE

Alternativ gibt es illustrative Namen, von denen CamelCase am besten etabliert ist. snake_case ist neuer (2004), aber mittlerweile gut etabliert. Kebab-Fall ist noch jünger und noch nicht etabliert, und möglicherweise auf Stack Overflow entstanden! ( Wie heißt der durch Striche getrennte Fall? ) Es gibt viele weitere farbenfrohe Vorschläge, wie Raupenkoffer, Zugkoffer (Anfangskapital), Wohnwagenkoffer usw.


Sollte es nicht "Caterpillar-Case" statt "Caterpillar_case" sein?
Aad Mathijssen

38
  • flatcase
  • kebab-case. Auch genannt caterpillar-case, dash-case, hyphen-case, lisp-case, spinal-caseundcss-case
  • camelCase
  • PascalCase oder CapitalCamelCase
  • snake_case oder c_case
  • MACRO_CASE oder UPPER_CASE
  • COBOL-CASE oder TRAIN-CASE

mumblecase ist eine schöne Alternative für Flatcase
Jimbali

3
+--------------------------+-------------------------------------------------------------+
| Formatting               | Name(s)                                                     |
+--------------------------+-------------------------------------------------------------|
| namingidentifier         | flat case/Lazy Case                                         |
| NAMINGIDENTIFIER         | upper flat case                                             |
| namingIdentifier         | (lower) camelCase, dromedaryCase                            |
| NamingIdentifier         | (upper) CamelCase, PascalCase, StudlyCase, CapitalCamelCase |
| naming_identifier        | snake_case, snake_case, pothole_case, C Case                |
| Naming_Identifier        | Camel_Snake_Case                                            |
| NAMING_IDENTIFIER        | SCREAMING_SNAKE_CASE, MACRO_CASE, UPPER_CASE, CONSTANT_CASE |
| naming-identifier        | Kebab Case/caterpillar-case/dash-case, hyphen-case,         |
|                          | lisp-case, spinal-case and css-case                         |
| NAMING-IDENTIFIER        | TRAIN-CASE, COBOL-CASE, SCREAMING-KEBAB-CASE                |
| Naming-Identifier        | Train-Case, HTTP-Header-Case                                |
| _namingIdentifier        | Undercore Notation (prefixed by "_" followed by camelCase   |
| datatypeNamingIdentifier | Hungarian Notation (variable names Prefixed by metadata     |
|                          | data-types which is out-dated)                              |
|--------------------------+-------------------------------------------------------------+

2

MyVariable: Pascal Case=> Wird verwendet fürClass

myVariable: Camel Case=> Wird für variableJava, C # usw. verwendet.

myvariable: Flat Case=> Wird für packageJava usw. verwendet.

my_variable: Snake Case=> Wird für variablePython, PHP usw. verwendet.

my-variable: Kebab Case=> Wird verwendet fürcss

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.