OC Coding Style: Unterschied zwischen den Versionen

Aus Opencaching-Wiki
Zur Navigation springen Zur Suche springen
K
(Revert nach Einstellung des Symfony-Projekts)
Zeile 1: Zeile 1:
 
Hier werden die style-guidelines für die Entwickler des OC-Codes fortgeschrieben, diese Seite ist unvollständig und enthält derzeit nur einzelne Teile, die aus dem bestehenden Code übernommen wurden, bzw. auf den sich das Entwicklerteam geeinigt hat. Diskussionen hierzu sollten im [http://forum.opencaching-network.org/index.php?board=43.0 Entwickerforum] geführt werden.
 
Hier werden die style-guidelines für die Entwickler des OC-Codes fortgeschrieben, diese Seite ist unvollständig und enthält derzeit nur einzelne Teile, die aus dem bestehenden Code übernommen wurden, bzw. auf den sich das Entwicklerteam geeinigt hat. Diskussionen hierzu sollten im [http://forum.opencaching-network.org/index.php?board=43.0 Entwickerforum] geführt werden.
  
Allgemein sollen die Richtlinien aus [http://www.php-fig.org/psr/psr-1/ PSR-1] und [http://www.php-fig.org/psr/psr-2/ PSR-2] angewendet werden. Für die meisten Entwicklungsumgebungen gibt es auch Plugins, die auf die Einhaltung prüfen und somit für einen sauberen Code sorgen.
+
=== Klammersetzung/Einrückung ===
 +
Die Klammersetzung/Einrückung erfolgt im [http://de.wikipedia.org/wiki/Einr%C3%BCckungsstil#Allman_.2F_BSD_.2F_.E2.80.9EEast_Coast.E2.80.9C Allman-Stil], die öffnende geschweifte Klammer steht in der folgenden Zeile (durch einen Zeilenumbruch von Kontrollstruktur und Bedingung/Parameter getrennt).
 +
<pre>
 +
if (...Bedingung...)
 +
{
 +
Anweisung1;
 +
Anweisung2;
 +
}
 +
</pre>
 +
oder
 +
<pre>
 +
class ClassName
 +
{
 +
...
 +
}
 +
</pre>
 +
oder
 +
<pre>
 +
function functionName (...Parameter...)
 +
{
 +
...
 +
}
 +
</pre>
  
Für die Einrückung sollen 4 Leerzeichen verwendet werden - keine Tab-Stopps!
+
=== Kontrollstrukturen ===
 +
Für alle Kontrollstrukturen gilt, zwischen dem Namen der Konstrollstruktur und der öffnenden Klammer der Bedingung ist ein Leerzeichen zu setzen.
 +
<pre>
 +
foreach (...Bedingung...)
 +
</pre>
 +
oder
 +
<pre>
 +
function functionName ([...Parameter...])
 +
</pre>
  
Um den Composer-Autoloader nutzen zu können, müssen Klassen nach [http://www.php-fig.org/psr/psr-4/ PSR-4] benannt und in die bestehende Namespace-Struktur einsortiert werden.
+
==== if ====
 +
Bei if-Statements soll wenn möglich die verkürzende Schreibweise verwendet werden:
 +
 
 +
Einzeilige Anweisungen (eingerückt)
 +
<pre>
 +
if (...Bedingung...)
 +
Einzeilige Anweisung;
 +
else
 +
Einzeilige Anweisung;
 +
</pre>
 +
 
 +
Bei Variablenzuweisung soll das if-Statement mittels Trinitäts-Operator verwendet werden:
 +
<pre>
 +
$variable = (...Bedingung... ? ...Wenn-Wert... : ...Sonst-Wert...);
 +
</pre>
  
 
[[Kategorie:Entwicklung|Stil]]
 
[[Kategorie:Entwicklung|Stil]]

Version vom 25. Juni 2015, 15:08 Uhr

Hier werden die style-guidelines für die Entwickler des OC-Codes fortgeschrieben, diese Seite ist unvollständig und enthält derzeit nur einzelne Teile, die aus dem bestehenden Code übernommen wurden, bzw. auf den sich das Entwicklerteam geeinigt hat. Diskussionen hierzu sollten im Entwickerforum geführt werden.

Klammersetzung/Einrückung

Die Klammersetzung/Einrückung erfolgt im Allman-Stil, die öffnende geschweifte Klammer steht in der folgenden Zeile (durch einen Zeilenumbruch von Kontrollstruktur und Bedingung/Parameter getrennt).

if (...Bedingung...)
{
	Anweisung1;
	Anweisung2;
}

oder

class ClassName
{
	...
}

oder

function functionName (...Parameter...)
{
	...
}

Kontrollstrukturen

Für alle Kontrollstrukturen gilt, zwischen dem Namen der Konstrollstruktur und der öffnenden Klammer der Bedingung ist ein Leerzeichen zu setzen.

foreach (...Bedingung...)

oder

function functionName ([...Parameter...])

if

Bei if-Statements soll wenn möglich die verkürzende Schreibweise verwendet werden:

Einzeilige Anweisungen (eingerückt)

if (...Bedingung...)
	Einzeilige Anweisung;
else
	Einzeilige Anweisung;

Bei Variablenzuweisung soll das if-Statement mittels Trinitäts-Operator verwendet werden:

$variable = (...Bedingung... ? ...Wenn-Wert... : ...Sonst-Wert...);