StudipCsNamenskonventionen

Namenskonventionen

Coding Style Index?

Auf dieser Seite... (ausblenden)

  1.   1.  Namensgebung
  2.   2.  Files
  3.   3.  Klassen
  4.   4.  Interfaces
  5.   5.  Methoden
  6.   6.  Accessor-Methoden
  7.   7.  Funktionen
  8.   8.  Variablen
  9.   9.  Klassenattribute
  10. 10.  Nicht-Klassenattribut Variablen
  11. 11.  Parameter
  12. 12.  Arrays
  13. 13.  Referenzvariablen / Funktionen, die Referenzen zurückgeben
  14. 14.  Globale Variablen
  15. 15.  Statische Variablen
    1. 15.1  Konstanten

1.  Namensgebung

Verwende beschreibende, aussagekräftige Namen und vermeide Abkürzungen! Auch sollten Uppercase Abkürzungen (wie z.B. HTML oder XML) vermieden und nur der erste Buchstabe groß geschrieben werden ( z.B. Html oder Xml).

2.  Files

PHP-Filenamen enden auf ".php".

PHP-Files, die eine Klasse enthalten, sind nach den Klassennamen zu benennen. Zusätzlich wird ".class.php" angehängt.

Bsp:

  • TestClass.class.php

PHP-Files, die ein Interface enthalten, sind nach dem Interfacename zu benennen und enden auf ".interface.php".

Bsp:

  • ITestClass.interface.php

PHP-Files, die inkludiert werden, enden mit ".inc.php" oder sollten in einem Unterverzeichnis liegen.

Bsp:

  • testscript.inc.php

3.  Klassen

Klassennamen beginnen immer mit einen Großbuchstaben und folgen der MixedCaseSyntax.

Bsp:

  • DbManager
  • StudipSemTreeView

Eine PHP-Datei sollte nur maximal eine Klasse enthalten. Falls eine Klasse enthalten ist bekommt die Datei den Namen der Klasse + .class.php.

4.  Interfaces

Interfacenamen beginnen mit einem großen I und danach in der MixedCaseSyntax. Wenn das Interface die Funktionalität nur einer Klasse definiert, sollte das Interface wie folgt heißen: I+KlassenName.

Bsp:

  • ITestClass

Eine PHP-Datei sollte nur maximal ein Interface enthalten.

5.  Methoden

Methodennamen beginnen mit einem Kleinbuchstaben und folgen der mixedCaseSyntax.

Bsp:

  • showSemTree()

6.  Accessor-Methoden

Accessor-Methoden müssen mit den Schlüsselwwörtern get bzw. set gekennzeichnet werden. Der erste Buchstabe des Variablennamens wird groß geschrieben.

  • Getter-Methode: get+Variablenname
  • Setter-Methoden: set+Variablenname

Bsp:

  • getUsername()
  • setUsername()

7.  Funktionen

Funktionen (die also nicht Teil von Klassendefinitionen sind) bekommen Namen in underscore_syntax und nur mit Kleinbuchstaben. Dem Funktionsnamen den Package-Namen voranstellen, um Kollisionen mit anderen Funktionsnamen zu vermeiden.

Bsp:

  • lib_get_object_name()

8.  Variablen

Zusammengesetzte Namen sind mit Unterstrich (underscore_syntax) oder Großbuchstaben (MixedCaseSyntax) zu trennen.

Bestimmten Variablentypen werden bestimmte Buchstaben vorangestellt:

  • "m" - Class Member Variable
  • "a" - Array
  • "r" - Reference
  • "g" - Global Variable
  • "s" - Static Variable

Diese Buchstaben können miteinander kombiniert werden, z.B.:

  • Referenz als Klassenattribut: $rmMyMemberClassVariable

9.  Klassenattribute

Dem Namen der Class Member Variable wird ein "m" vorangestellt, gefolgt von der MixedCaseSyntax.

Bsp:

  • $mUserName

10.  Nicht-Klassenattribut Variablen

Non-Class Member Variablennamen werden klein geschrieben und ggf. mit "_" getrennt (underscore_syntax).

Bsp:

  • $user_name

11.  Parameter

Die Parameter einer Methode oder Funktion beginnen mit einem Kleinbuchstaben und werden in mixedCaseSyntax geschrieben.

Bsp:

  • setParam($myParam)

12.  Arrays

Dem Namen eines Arrays wird ein "a" vorangestellt, gefolgt von der MixedCaseSyntax (Klassen-/Interface-/Methoden-/Attribut-/Parameter-Kontext) oder der underscore_syntax (Funktions-/Variablen-Kontext).

Bsp:

  • $aMyArray
  • $a_my_array

13.  Referenzvariablen / Funktionen, die Referenzen zurückgeben

Dem Namen der Referenzvariablen oder eines Refenrenzargumentes so wie dem Namen einer Funktion/Methode, die Referenzen zurückliefern, wird ein "r" vorangestellt, gefolgt von der MixedCaseSyntax (Klassen-/Interface-/Methoden-/Attribut-/Parameter-Kontext) oder der underscore_syntax (Funktions-/Variablen-Kontext).

Bsp:

  • $rVariable
  • function fct(&rArgument)
  • function &rFct() { }

14.  Globale Variablen

Dem Variablennamen wir ein "g" vorangestellt, gefolgt von der MixedCaseSyntax (Klassen-/Interface-/Methoden-/Attribut-/Parameter-Kontext) oder der underscore_syntax (Funktions-/Variablen-Kontext).

Bsp:

  • global $gLog
  • global $g_log

15.  Statische Variablen

Dem Namen einer statischen Variablen wir ein "s" vorangestellt, gefolgt von der MixedCaseSyntax (Klassen-/Interface-/Methoden-/Attribut-/Parameter-Kontext) oder der underscore_syntax (Funktions-/Variablen-Kontext).

Bsp:

function test()
{
    static $msStatus = 0;
}

15.1  Konstanten

Konstanten werden immer vollständig groß geschrieben, mit Unterstrichen zwischen den Worten. Ihre Namen müssen mit dem Klassen- bzw. Package-Namen beginnen. Zum Beispiel beginnen alle Konstanten des DB::-Packages mit DB_.

Anmerkung: Die Konstanten true, false und null werden als einzige Ausnahme immer klein geschrieben.

Letzte Änderung am 22.08.2008 22:04 Uhr von chueser. navigation & toc