FAQ (Frequently Asked Questions)

Hauptseite > Wie Sie etwas zu openPHPnuke beitragen können : OPN Codierstandards : 

OPN Codierstandards (9)

  OpenPHPNuke - das Open Source CMS FAQ
 OPN Codierstandards
      Wie Sie etwas zu openPHPnuke beitragen können
  Anmerkung

Die OPN Codierstandards gelten für ausschließlich für Code, welcher zum Bestandteil von OPN werden soll.
(Zurück zum Seitenanfang)

  Einrücken

Benutzen Sie Einrückungen von je einem Tabulator. Hier ist ein Beispiel

function test () {

     return 10;

}
(Zurück zum Seitenanfang)

  Kontrollstrukturen

Diese beinhalten if, for, while, switch, etc.
Hier ein Beispiel für eine if Anweisung, nachdem es die komplizierteste von ihnen ist:

if ((Bedingung1) || (Bedingung2)) {
Anweisung1;
} elseif ((Bedingung3) && (Bedingung4)) {
Anweisung2;
} else {
Default-Anweisung;
}

Kontrollstrukturen sollten ein Leerzeichen zwischen dem Schlüsselwort und der öffnenden Klammer haben, um sie von Funktionsaufrufen besser zu unterscheiden.
     
Sie sollten immer geschweifte Klammern benutzen auch wenn sie in manchen Situationen rein technisch nur optional anzuwenden sind. Sie zu verwenden erhöht nicht nur die Lesbarkeit und vermindert daher die Wahrscheinlichkeit von logischen Fehlern, wenn neue Zeilen hinzugefügt werden.

(Zurück zum Seitenanfang)

  Funktionsaufrufe

Funktionsaufrufe sollten zwischen dem Funktionsnamen, der öffnenden Klammer, und dem ersten Parameter, sowie zwischen dem letzten Parameter und der schließenden Klammer keine Leerzeichen enthalten. Die einzelnen Parameter sollten zwischen den Beistrichen und dem nächsten Parameter durch Leerzeichen getrennt werden. Hier ein Beispiel:

$vari = myfunc($a, $b, $c);

Wie oben gezeigt, sollte das zur Zuweisung des Rückgabewertes einer Funktion an eine Variable verwendete Gleichheitszeichen auf jeder Seite von einem Leerzeichen umgeben sein.


(Zurück zum Seitenanfang)

  Funktionsdefinitionen

Funktionsdeklarationen folgen der "eine entsprechende Klammer" Konvention:

function myFunction($arg1, $arg2 = '') {

if (Bedingung) {
Anweisung;
}
return $val;

}

Argumente mit Default-Werten werden am Ende der Argumentenliste aufgeführt. Versuchen Sie immer einen bedeutungsvollen Wert von einer Funktion zurückzugeben, wenn ein Rückgabewert angebracht ist.


(Zurück zum Seitenanfang)

  Kommentare

Kommentare im Stil von C (/* */) und C++ (//) sind zu verwenden, während Kommentare im Stile von perl/shell (#) zu vermeiden sind.
(Zurück zum Seitenanfang)

  Beispiel URLs

Verwenden Sie "example.com" lt. RFC 2606 für alle Beispiel URLs.
(Zurück zum Seitenanfang)

  Namenskonventionen

Funktionen und Methoden

Funktionen und Methoden sollten unter Verwendung des "studly caps" Stils (auch bekannt als "bumpy case" oder "camel caps") benannt werden. Funktionsnamen sollten zusätzlich den Paketnamen als Präfix enthalten, um Kollisionen zwischen den Paketen zu vermeiden. Der Anfangsbuchstabe des Namens (nach dem Präfix) ist in Kleinbuchstaben, und jeder Anfangsbuchstabe eines neuen "Wortes" in Großbuchstaben.

Ein paar Beispiele:

connect()     
getUser()
buildSomeUser()
XML_RPC_serializeUser()

Private Class Members
(Klassenmitgieder, welche nur von innerhalb der Klasse aus, in der sie deklariert sind, benutzt werden sollen) beginnen mit einem einzelnen Unterstrich.

Zum Beispiel:
_sort()     
_initUser()     
$this->_status

Konstanten

Konstanten sollten immer in Großbuchstaben benannt werden, und die Kategorientrennung sollte mit Unterstrichen erfolgen.

Geben Sie als Präfix zum Konstantennamen den Namen der Klasse bzw. des Modules an, in welcher die Konstante benutzt wird.

Zum Beispiel beginnen alle Konstanten, welche von user Modul benutzt werden, mit "USR_".

Globale Variablen

Wenn Sie in Ihrem Paket globale Variablen definieren müssen, sollte deren Name mit einem $opn Unterstrich, dem Modulnamen, und einem weiteren Unterstrich beginnen.

Zum Beispiel benutzt das Modul User eine globale Variable namens $opn_USER_beispiel.


(Zurück zum Seitenanfang)

  Singlequotes

Singlequotes gehören nicht in HTML-Tags, also auch nicht in der PHP - Ausgabe benutzen.

Wenn Sie Dinge mit echo ausgeben möchtest escape Sie entweder die double-quotes oder benutze Sie Single-Quotes ( ' ) um den Bereich einzuschliessen, der per echo ausgegeben werden soll

Bsp :

code:

echo 'Link'

Wenn Variablen drin vorkommen setzen Sie sie folgendermassen ein :

code:

echo ''.$link_name.'';

Das ist eigentlich der Beste Weg um nicht alles escapen zu müssen, zumal der Code innerhalb der Single-Quotes nicht durch den PHP-Parser läuft und damit die Laufzeit des Scripts bei vielen Codezeilen auf Dauer verkürzt wird.
(Zurück zum Seitenanfang)