|
@@ -1,6 +1,6 @@
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
<!-- EN-Revision: 21740 -->
|
|
<!-- EN-Revision: 21740 -->
|
|
|
-<!-- Reviewed: no -->
|
|
|
|
|
|
|
+<!-- Reviewed: 21740 -->
|
|
|
<appendix id="coding-standard">
|
|
<appendix id="coding-standard">
|
|
|
<title>Zend Framework Coding Standard für PHP</title>
|
|
<title>Zend Framework Coding Standard für PHP</title>
|
|
|
|
|
|
|
@@ -12,33 +12,33 @@
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Dieses Dokument bietet Richtlinien für die Formatierung von Code und Dokumentation
|
|
Dieses Dokument bietet Richtlinien für die Formatierung von Code und Dokumentation
|
|
|
- für Individuen und Teams die im Zend Framework mitarbeiten. Viele Entwickler die
|
|
|
|
|
- den Zend Framework verwenden haben diese Code Standards als nützlich empfunden weil
|
|
|
|
|
- Ihr Code Stil mit jedem Zend Framework Code konsistent bleibt. Es ist auch
|
|
|
|
|
- anzumerken das es signifikant viel Arbeit erfordert einen kompletten Coding
|
|
|
|
|
|
|
+ für Individuen und Teams, die am Zend Framework mitarbeiten. Viele Entwickler, die
|
|
|
|
|
+ das Zend Framework verwenden, halten diesen Coding Standard für nützlich, weil
|
|
|
|
|
+ ihr Code Stil zum gesamten Zend Framework Code konsistent bleibt. Es ist auch
|
|
|
|
|
+ anzumerken, dass es erhebliche Aufwand erfordert, einen kompletten Coding
|
|
|
Standard zu definieren.
|
|
Standard zu definieren.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<note>
|
|
<note>
|
|
|
<para>
|
|
<para>
|
|
|
- Manchmal entscheiden Entwickler das die Verfügbarkeit eines Standards wichtiger
|
|
|
|
|
- ist als was der Standard aktuell im höchsten Level des Designs empfiehlt. Diese
|
|
|
|
|
- Richtlinien im Zend Framework Coding Standard beschreiben die Praxis die im
|
|
|
|
|
- Zend Framework Projekt sehr gut funktionieren. Diese Standard können geändert
|
|
|
|
|
- oder so wie sie sind verwendet werden solange Sie sich an unsere
|
|
|
|
|
|
|
+ Manchmal halten Entwickler die Schaffung eines Standards für wichtiger,
|
|
|
|
|
+ als das was der Standard eigentlich in der tiefsten Gliederungsebene des Designs empfiehlt.
|
|
|
|
|
+ Diese Richtlinien im Zend Framework Coding Standard beschreiben die Praxis, die im
|
|
|
|
|
+ Zend Framework Projekt sehr gut funktioniert. Dieser Standard kann geändert
|
|
|
|
|
+ oder so wie er ist verwendet werden, solange Sie sich an unsere
|
|
|
<ulink url="http://framework.zend.com/license">Lizenz</ulink> halten.
|
|
<ulink url="http://framework.zend.com/license">Lizenz</ulink> halten.
|
|
|
</para>
|
|
</para>
|
|
|
</note>
|
|
</note>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Die Bereiche die im Zend Framework Coding Standard abgedeckt werden enthalten:
|
|
|
|
|
|
|
+ Die Bereiche, die im Zend Framework Coding Standard abgedeckt werden, enthalten:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
<itemizedlist>
|
|
|
- <listitem><para><acronym>PHP</acronym> Dateiformatierung</para></listitem>
|
|
|
|
|
- <listitem><para>Namens Konventionen</para></listitem>
|
|
|
|
|
|
|
+ <listitem><para><acronym>PHP</acronym>-Dateiformatierung</para></listitem>
|
|
|
|
|
+ <listitem><para>Namenskonventionen</para></listitem>
|
|
|
<listitem><para>Code Stil</para></listitem>
|
|
<listitem><para>Code Stil</para></listitem>
|
|
|
- <listitem><para>Inline Dokumentation</para></listitem>
|
|
|
|
|
|
|
+ <listitem><para>Inline-Dokumentation</para></listitem>
|
|
|
</itemizedlist>
|
|
</itemizedlist>
|
|
|
</sect2>
|
|
</sect2>
|
|
|
|
|
|
|
@@ -46,33 +46,33 @@
|
|
|
<title>Ziele</title>
|
|
<title>Ziele</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Coding Standards sind in jedem Entwicklungs Projekt wichtig, aber sie sind speziell
|
|
|
|
|
- dann wichtig wenn viele Entwickler an dem gleichen Projekt arbeiten. Coding
|
|
|
|
|
- Standards helfen sicherzustellen das der Code von hoher Qualität ist, weniger
|
|
|
|
|
- Fehler hat, und einfach zu warten ist.
|
|
|
|
|
|
|
+ Coding Standards sind in jedem Entwicklungsprojekt wichtig, aber sie sind speziell
|
|
|
|
|
+ dann wichtig, wenn viele Entwickler am gleichen Projekt arbeiten. Coding
|
|
|
|
|
+ Standards helfen sicherzustellen, dass der Code von hoher Qualität ist, weniger
|
|
|
|
|
+ Fehler hat und einfach zu warten ist.
|
|
|
</para>
|
|
</para>
|
|
|
</sect2>
|
|
</sect2>
|
|
|
</sect1>
|
|
</sect1>
|
|
|
|
|
|
|
|
<sect1 id="coding-standard.php-file-formatting">
|
|
<sect1 id="coding-standard.php-file-formatting">
|
|
|
- <title>PHP Dateiformatierung</title>
|
|
|
|
|
|
|
+ <title>PHP-Dateiformatierung</title>
|
|
|
|
|
|
|
|
<sect2 id="coding-standard.php-file-formatting.general">
|
|
<sect2 id="coding-standard.php-file-formatting.general">
|
|
|
<title>Allgemein</title>
|
|
<title>Allgemein</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Für Dateien, welche nur <acronym>PHP</acronym> Code beinhalten ist der schliessende
|
|
|
|
|
- Tag ("?>") nicht zugelassen. Er wird von <acronym>PHP</acronym> nicht benötigt, und
|
|
|
|
|
- das Weglassen verhindert das versehentlich Leerzeilen in die Antwort eingefügt
|
|
|
|
|
|
|
+ Für Dateien, welche nur <acronym>PHP</acronym>-Code beinhalten, ist der schliessende
|
|
|
|
|
+ Tag ("?>") nicht zugelassen. Er wird von <acronym>PHP</acronym> nicht benötigt und
|
|
|
|
|
+ das Weglassen verhindert, dass versehentlich Leerzeilen in die Antwort eingefügt
|
|
|
werden.
|
|
werden.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<note>
|
|
<note>
|
|
|
<para>
|
|
<para>
|
|
|
- <emphasis>Wichtig</emphasis>: Einbeziehen von beliebigen binärischen Daten
|
|
|
|
|
|
|
+ <emphasis>Wichtig</emphasis>: Einbeziehen von beliebigen binären Daten
|
|
|
durch <methodname>__HALT_COMPILER()</methodname> ist in den
|
|
durch <methodname>__HALT_COMPILER()</methodname> ist in den
|
|
|
- <acronym>PHP</acronym> Dateien im Zend Framework oder abgeleiteten Datei
|
|
|
|
|
- verboten. Das Benutzen ist nur für einige Installationsskirpte erlaubt.
|
|
|
|
|
|
|
+ <acronym>PHP</acronym>-Dateien im Zend Framework oder abgeleiteten Dateien
|
|
|
|
|
+ verboten. Das Benutzen ist nur für einige Installationsskripte erlaubt.
|
|
|
</para>
|
|
</para>
|
|
|
</note>
|
|
</note>
|
|
|
</sect2>
|
|
</sect2>
|
|
@@ -89,7 +89,7 @@
|
|
|
<title>Maximale Zeilenlänge</title>
|
|
<title>Maximale Zeilenlänge</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Die Zielzeilenlänge ist 80 Zeichen. Entwickler sollten jede Zeile Ihres Codes unter
|
|
|
|
|
|
|
+ Die Zielzeilenlänge ist 80 Zeichen. Entwickler sollten jede Zeile ihres Codes unter
|
|
|
80 Zeichen halten, soweit dies möglich und praktikabel ist. Trotzdem sind längere
|
|
80 Zeichen halten, soweit dies möglich und praktikabel ist. Trotzdem sind längere
|
|
|
Zeilen in einigen Fällen erlaubt. Die maximale Länge einer <acronym>PHP</acronym>
|
|
Zeilen in einigen Fällen erlaubt. Die maximale Länge einer <acronym>PHP</acronym>
|
|
|
Codezeile beträgt 120 Zeichen.
|
|
Codezeile beträgt 120 Zeichen.
|
|
@@ -100,13 +100,13 @@
|
|
|
<title>Zeilenbegrenzung</title>
|
|
<title>Zeilenbegrenzung</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Die Zeilenbegrenzung folgt der Unix Textdatei Konvention. Zeilen müssen mit
|
|
|
|
|
- einem einzelnen Zeilenvorschubzeichen (LF) enden. Zeilenvorschub Zeicen werden duch
|
|
|
|
|
- eine ordinale 10, oder durch 0x0A (hexadecimal) dargestellt.
|
|
|
|
|
|
|
+ Die Zeilenbegrenzung folgt der Konvention für Unix-Textdateien. Zeilen müssen mit
|
|
|
|
|
+ einem einzelnen Zeilenvorschubzeichen (LF) enden. Zeilenvorschubzeichen werden durch
|
|
|
|
|
+ eine ordinale 10, oder durch 0x0A (hexadezimal) dargestellt.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Beachte: Benutze nicht den Wagenrücklauf (CR) wie in den Konventionen von Apple's
|
|
|
|
|
|
|
+ Beachte: Benutze nicht den Wagenrücklauf (CR) wie in den Konventionen von Apples
|
|
|
OS (0x0D) oder die Kombination aus Wagenrücklauf und Zeilenvorschub
|
|
OS (0x0D) oder die Kombination aus Wagenrücklauf und Zeilenvorschub
|
|
|
(<acronym>CRLF</acronym>) wie im Standard für das Windows OS (0x0D, 0x0A).
|
|
(<acronym>CRLF</acronym>) wie im Standard für das Windows OS (0x0D, 0x0A).
|
|
|
</para>
|
|
</para>
|
|
@@ -114,14 +114,14 @@
|
|
|
</sect1>
|
|
</sect1>
|
|
|
|
|
|
|
|
<sect1 id="coding-standard.naming-conventions">
|
|
<sect1 id="coding-standard.naming-conventions">
|
|
|
- <title>Namens Konventionen</title>
|
|
|
|
|
|
|
+ <title>Namenskonventionen</title>
|
|
|
|
|
|
|
|
<sect2 id="coding-standard.naming-conventions.classes">
|
|
<sect2 id="coding-standard.naming-conventions.classes">
|
|
|
<title>Klassen</title>
|
|
<title>Klassen</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Zend Framework standartisiert eine Klassennamen Konvention wobei die Namen der
|
|
|
|
|
- Klassen direkt mit den Verzeichnissen übereinstimmen muß in welchen Sie gespeichert
|
|
|
|
|
|
|
+ Zend Framework standardisiert eine Klassennamenkonvention, wobei die Namen der
|
|
|
|
|
+ Klassen direkt mit den Verzeichnissen übereinstimmen müssen, in welchen sie gespeichert
|
|
|
sind. Das Basisverzeichnis der Zend Framework Standard Bibliothek ist das "Zend/"
|
|
sind. Das Basisverzeichnis der Zend Framework Standard Bibliothek ist das "Zend/"
|
|
|
Verzeichnis, wobei das Basisverzeichnis der Zend Framework Extras Bibliothek im
|
|
Verzeichnis, wobei das Basisverzeichnis der Zend Framework Extras Bibliothek im
|
|
|
"ZendX/" Verzeichnis ist. Alle Zend Framework Klassen werden hierarchisch unter dem
|
|
"ZendX/" Verzeichnis ist. Alle Zend Framework Klassen werden hierarchisch unter dem
|
|
@@ -129,37 +129,37 @@
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Klassennamen dürfen nur alphanumerische Zeichen enthalten. Nummern sind in
|
|
|
|
|
- Klassennamen gestattet es wird aber von Ihnen in den meisten Fällen abgeraten.
|
|
|
|
|
- Unterstriche sind nur gestattet im Platz des Pfadseparators -- der Dateiname
|
|
|
|
|
- "<filename>Zend/Db/Table.php</filename>" muß übereinstimmen mit dem Klassennamen
|
|
|
|
|
|
|
+ Klassennamen dürfen nur alphanumerische Zeichen enthalten. Ziffern sind in
|
|
|
|
|
+ Klassennamen gestattet, es wird aber in den meisten Fällen davon abgeraten.
|
|
|
|
|
+ Unterstriche sind nur statt des Pfadtrenners gestattet -- der Dateiname
|
|
|
|
|
+ "<filename>Zend/Db/Table.php</filename>" muss übereinstimmen mit dem Klassennamen
|
|
|
"<classname>Zend_Db_Table</classname>".
|
|
"<classname>Zend_Db_Table</classname>".
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Wenn ein Klassenname aus mehr als einem Wort besteht, muß der erste Buchstabe von
|
|
|
|
|
|
|
+ Wenn ein Klassenname aus mehr als einem Wort besteht, muss der erste Buchstabe von
|
|
|
jedem neuen Wort großgeschrieben werden. Durchgehende Großbuchstaben sind nicht
|
|
jedem neuen Wort großgeschrieben werden. Durchgehende Großbuchstaben sind nicht
|
|
|
erlaubt, z.B. eine Klasse "Zend_PDF" ist nicht erlaubt, aber
|
|
erlaubt, z.B. eine Klasse "Zend_PDF" ist nicht erlaubt, aber
|
|
|
- "<classname>Zend_Pdf</classname>" ist akzeptierbar.
|
|
|
|
|
|
|
+ "<classname>Zend_Pdf</classname>" ist akzeptabel.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Diese Konventionen definieren einen Pseudo-Namespace Mechanismus für Zend
|
|
Diese Konventionen definieren einen Pseudo-Namespace Mechanismus für Zend
|
|
|
Framework. Zend Framework wird das <acronym>PHP</acronym> Namespace Feature
|
|
Framework. Zend Framework wird das <acronym>PHP</acronym> Namespace Feature
|
|
|
- einbauen sobald es verfügbar ist und es für unsere Entwickler in deren Anwendungen
|
|
|
|
|
|
|
+ einbauen, sobald es verfügbar ist und es für unsere Entwickler in deren Anwendungen
|
|
|
ohne Bedenken verwendbar ist.
|
|
ohne Bedenken verwendbar ist.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Siehe die Klassennamen in der Standard und Extra Bibliothek für Beispiel dieser
|
|
|
|
|
- Klassennamen Konvention.
|
|
|
|
|
|
|
+ Als Beispiel dieser Klassennamenkonvention sei auf die Klassennamen
|
|
|
|
|
+ in der Standard und der Extra Bibliothek verwiesen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<note>
|
|
<note>
|
|
|
<para>
|
|
<para>
|
|
|
- <emphasis>Wichtig</emphasis>: Code welcher mit dem Framework ausgeliefert
|
|
|
|
|
- werden muß, aber nicht Teil der Standard oder Extras Bibliothek ist (z.B.
|
|
|
|
|
- Anwendungscode oder Bibliotheken die nicht von Zend ausgeliefert werden),
|
|
|
|
|
|
|
+ <emphasis>Wichtig</emphasis>: Klassenname in Code, welcher mit dem Framework ausgeliefert
|
|
|
|
|
+ werden muss, aber nicht Teil der Standard oder Extras Bibliothek ist (z.B.
|
|
|
|
|
+ Anwendungscode oder Bibliotheken, die nicht von Zend ausgeliefert werden),
|
|
|
dürfen nie mit "Zend_" oder "ZendX_" beginnen.
|
|
dürfen nie mit "Zend_" oder "ZendX_" beginnen.
|
|
|
</para>
|
|
</para>
|
|
|
</note>
|
|
</note>
|
|
@@ -171,35 +171,35 @@
|
|
|
<para>
|
|
<para>
|
|
|
Generell folgen abstrakte Klassen der gleichen Konvention wie <link
|
|
Generell folgen abstrakte Klassen der gleichen Konvention wie <link
|
|
|
linkend="coding-standard.naming-conventions.classes">Klassen</link>, mit einer
|
|
linkend="coding-standard.naming-conventions.classes">Klassen</link>, mit einer
|
|
|
- zusätzlichen Regel: Die Namen von abstrakten Klassen müssen mit derm Term
|
|
|
|
|
|
|
+ zusätzlichen Regel: Die Namen von abstrakten Klassen müssen mit dem Term
|
|
|
"Abstract" enden, und dem Term darf kein Unterstrich vorangestellt sein. Als
|
|
"Abstract" enden, und dem Term darf kein Unterstrich vorangestellt sein. Als
|
|
|
Beispiel wird <classname>Zend_Controller_Plugin_Abstract</classname> als ungültig
|
|
Beispiel wird <classname>Zend_Controller_Plugin_Abstract</classname> als ungültig
|
|
|
- angenommen, aber <classname>Zend_Controller_PluginAbstract</classname> oder
|
|
|
|
|
|
|
+ betrachtet, aber <classname>Zend_Controller_PluginAbstract</classname> oder
|
|
|
<classname>Zend_Controller_Plugin_PluginAbstract</classname> wären gültige Namen.
|
|
<classname>Zend_Controller_Plugin_PluginAbstract</classname> wären gültige Namen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<note>
|
|
<note>
|
|
|
<para>
|
|
<para>
|
|
|
- Diese Namens Konvention ist neu mit Version 1.9.0 des Zend Frameworks. Bei
|
|
|
|
|
- Klassen vor dieser Version kann es sein das sie dieser Regel nicht folgen, aber
|
|
|
|
|
- Sie werden in Zukunft umbenannt um zu entsprechen.
|
|
|
|
|
|
|
+ Diese Namenskonvention ist neu seit Version 1.9.0 des Zend Frameworks. Bei
|
|
|
|
|
+ Klassen vor dieser Version kann es sein, dass sie dieser Regel nicht folgen, aber
|
|
|
|
|
+ sie werden in Zukunft umbenannt, um ihr zu entsprechen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Der Hintergrund dieser Änderung ist die Verwendung von Namespaces. Da wir auf
|
|
Der Hintergrund dieser Änderung ist die Verwendung von Namespaces. Da wir auf
|
|
|
Zend Framework 2.0 und die Verwendung von <acronym>PHP</acronym> 5.3 zugehen,
|
|
Zend Framework 2.0 und die Verwendung von <acronym>PHP</acronym> 5.3 zugehen,
|
|
|
- werden wir Namespaces verwenden. Der einfachste Weg die Konvertierung zu
|
|
|
|
|
- Namespaces zu automatisieren besteht darin die Unterstriche in Namespace
|
|
|
|
|
|
|
+ werden wir Namespaces verwenden. Der einfachste Weg, die Konvertierung zu
|
|
|
|
|
+ Namespaces zu automatisieren, besteht darin, die Unterstriche in Namespace
|
|
|
Separatoren zu konvertieren -- aber in der alten Namenskonvention, lässt dies
|
|
Separatoren zu konvertieren -- aber in der alten Namenskonvention, lässt dies
|
|
|
den Klassennamen einfach als "Abstract" oder "Interface" zurück" -- beide sind
|
|
den Klassennamen einfach als "Abstract" oder "Interface" zurück" -- beide sind
|
|
|
reservierte Schlüsselwörter in <acronym>PHP</acronym>. Wenn wir den Namen der
|
|
reservierte Schlüsselwörter in <acronym>PHP</acronym>. Wenn wir den Namen der
|
|
|
- (Unter)Komponente dem Klassennamen voranstellen können wir diese Probleme
|
|
|
|
|
|
|
+ (Unter)Komponente dem Klassennamen voranstellen, können wir diese Probleme
|
|
|
vermeiden.
|
|
vermeiden.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Um die Situation zu illustrieren, nehmen wir an dass die Klasse
|
|
|
|
|
- <classname>Zend_Controller_Request_Abstract</classname> konvertiert wird um
|
|
|
|
|
|
|
+ Um die Situation zu illustrieren, nehmen wir an, dass die Klasse
|
|
|
|
|
+ <classname>Zend_Controller_Request_Abstract</classname> konvertiert wird, um
|
|
|
Namespaces zu verwenden:
|
|
Namespaces zu verwenden:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -226,8 +226,8 @@ abstract class RequestAbstract
|
|
|
]]></programlisting>
|
|
]]></programlisting>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Wir bleiben trotzdem bei der Semantik und der Trennung auf Namespaces, wärend
|
|
|
|
|
- wir die Probleme mit den Schlüsselworten vermeiden; simultan beschreibt dies
|
|
|
|
|
|
|
+ Wir bleiben trotzdem bei der Semantik und der Trennung auf Namespaces, während
|
|
|
|
|
+ wir die Probleme mit den Schlüsselworten vermeiden; gleichzeitig beschreibt dies
|
|
|
abstrakte Klassen besser.
|
|
abstrakte Klassen besser.
|
|
|
</para>
|
|
</para>
|
|
|
</note>
|
|
</note>
|
|
@@ -242,21 +242,21 @@ abstract class RequestAbstract
|
|
|
zusätzlichen Regel: Die Namen von Interfaces können optional mit dem Term
|
|
zusätzlichen Regel: Die Namen von Interfaces können optional mit dem Term
|
|
|
"Interface" enden, aber dem Term darf kein Unterstrich vorangestellt sein. Als
|
|
"Interface" enden, aber dem Term darf kein Unterstrich vorangestellt sein. Als
|
|
|
Beispiel wird <classname>Zend_Controller_Plugin_Interface</classname> als ungültig
|
|
Beispiel wird <classname>Zend_Controller_Plugin_Interface</classname> als ungültig
|
|
|
- angenommen, aber <classname>Zend_Controller_PluginInterface</classname> oder
|
|
|
|
|
|
|
+ betrachtet, aber <classname>Zend_Controller_PluginInterface</classname> oder
|
|
|
<classname>Zend_Controller_Plugin_PluginInterface</classname> wären gültige Namen.
|
|
<classname>Zend_Controller_Plugin_PluginInterface</classname> wären gültige Namen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Wärend diese Regel nicht benötigt wird, wird Sie stark empfohlen, da Sie
|
|
|
|
|
- Entwicklern einen guten visuellen Hinweis gibt welche Dateien ein Interface
|
|
|
|
|
|
|
+ Während diese Regel nicht benötigt wird, wird sie sehr empfohlen, da sie
|
|
|
|
|
+ Entwicklern einen guten visuellen Hinweis gibt, welche Dateien ein Interface
|
|
|
enthalten und welche Klassen.
|
|
enthalten und welche Klassen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<note>
|
|
<note>
|
|
|
<para>
|
|
<para>
|
|
|
- Diese Namens Konvention ist neu mit Version 1.9.0 des Zend Frameworks. Bei
|
|
|
|
|
- Klassen vor dieser Version kann es sein das sie dieser Regel nicht folgen, aber
|
|
|
|
|
- Sie werden in Zukunft umbenannt um zu entsprechen. Siehe <link
|
|
|
|
|
|
|
+ Diese Namenskonvention ist neu seit Version 1.9.0 des Zend Frameworks. Bei
|
|
|
|
|
+ Klassen vor dieser Version kann es sein, dass sie dieser Regel nicht folgen, aber
|
|
|
|
|
+ sie werden in Zukunft umbenannt um ihr zu entsprechen. Siehe <link
|
|
|
linkend="coding-standard.naming-conventions.abstracts">den vorhergehenden
|
|
linkend="coding-standard.naming-conventions.abstracts">den vorhergehenden
|
|
|
Abschnitt</link> für weitere Informationen über die Hintergründe für diese
|
|
Abschnitt</link> für weitere Informationen über die Hintergründe für diese
|
|
|
Änderung.
|
|
Änderung.
|
|
@@ -268,13 +268,13 @@ abstract class RequestAbstract
|
|
|
<title>Dateinamen</title>
|
|
<title>Dateinamen</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Für alle anderen Dateien sind nur alphanummerische Zeichen, Unterstriche, und der
|
|
|
|
|
|
|
+ Für alle anderen Dateien sind nur alphanumerische Zeichen, Unterstriche und der
|
|
|
Bindestrich ("-") gestattet. Leerzeichen sind völlig verboten.
|
|
Bindestrich ("-") gestattet. Leerzeichen sind völlig verboten.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Jede Datei die irgendeinen <acronym>PHP</acronym> Code enthält sollte mit der
|
|
|
|
|
- Endung "<filename>.php</filename>" enden, mit Ausnahme der View Skripte. Die
|
|
|
|
|
|
|
+ Jede Datei, die irgendeinen <acronym>PHP</acronym>-Code enthält, sollte mit der
|
|
|
|
|
+ Endung "<filename>.php</filename>" enden, mit Ausnahme der View-Skripte. Die
|
|
|
folgenden Beispiele zeigen akzeptierbare Dateinamen für Zend Framework Klassen:
|
|
folgenden Beispiele zeigen akzeptierbare Dateinamen für Zend Framework Klassen:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -295,20 +295,20 @@ Zend/View/Helper/FormRadio.php
|
|
|
<title>Funktionen und Methoden</title>
|
|
<title>Funktionen und Methoden</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Funktionsnamen dürfen nur Alphanummerische Zeichen enthalten. Unterstriche sind
|
|
|
|
|
- nicht gestattet. Nummern sind in Funktionsnamen gestattet aber in den meisten
|
|
|
|
|
|
|
+ Funktionsnamen dürfen nur alphanumerische Zeichen enthalten. Unterstriche sind
|
|
|
|
|
+ nicht gestattet. Ziffern sind in Funktionsnamen gestattet, aber in den meisten
|
|
|
Fällen nicht empfohlen.
|
|
Fällen nicht empfohlen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Funktionsnamen müssen immer mit einem Kleinbuchstaben anfangen. Wenn Funktionsnamen
|
|
Funktionsnamen müssen immer mit einem Kleinbuchstaben anfangen. Wenn Funktionsnamen
|
|
|
- aus mehr als einem Wort bestehen, muß der erste Buchstabe jeden Wortes
|
|
|
|
|
- großgeschrieben werden. Das wird normalerweise "camelCase" Formatierung genannt.
|
|
|
|
|
|
|
+ aus mehr als einem Wort bestehen, muss der erste Buchstabe jedes Worts
|
|
|
|
|
+ großgeschrieben werden. Das wird häufig "camelCase"-Formatierung genannt.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Wortreichtum wird generell befürwortet. Funktionsnamen sollten so wortreich wie
|
|
|
|
|
- möglich sein um deren Zweck und Verhalten zu erklären.
|
|
|
|
|
|
|
+ Ausführlichkeit wird generell befürwortet. Funktionsnamen sollten so ausführlich wie
|
|
|
|
|
+ möglich sein, um deren Zweck und Verhalten zu erklären.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
@@ -324,24 +324,24 @@ widgetFactory()
|
|
|
]]></programlisting>
|
|
]]></programlisting>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Für objekt-orientiertes Programmieren, sollten Zugriffspunkte für Instanzen oder
|
|
|
|
|
|
|
+ Für objektorientiertes Programmieren sollten Zugriffspunkte für Instanzen oder
|
|
|
statische Variablen immer mit "get" oder "set" beginnen. Wenn Design-Pattern
|
|
statische Variablen immer mit "get" oder "set" beginnen. Wenn Design-Pattern
|
|
|
- implementiert werden, wie Singleton oder das Factory Pattern, sollte der Name der
|
|
|
|
|
- Methode den Namen des Pattern enthalten wo es praktikabel ist, um das Verhalten
|
|
|
|
|
|
|
+ implementiert werden wie Singleton oder das Factory Pattern, sollte der Name der
|
|
|
|
|
+ Methode den Namen des Pattern enthalten, wo es praktikabel ist, um das Verhalten
|
|
|
besser zu beschreiben.
|
|
besser zu beschreiben.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Für Methoden in Objekten die mit dem "private" oder "protected" Modifikator
|
|
|
|
|
- deklariert sind, muß das erste Zeichen des Namens der Methode ein einzelner
|
|
|
|
|
|
|
+ Für Methoden in Objekten, die mit dem Modifikator "private" oder "protected"
|
|
|
|
|
+ deklariert sind, muss das erste Zeichen des Namens der Methode ein einzelner
|
|
|
Unterstrich sein. Das ist die einzige akzeptable Anwendung von einem Unterstrich
|
|
Unterstrich sein. Das ist die einzige akzeptable Anwendung von einem Unterstrich
|
|
|
- im Namen einer Methode. Methoden die als "public" deklariert sind sollten nie
|
|
|
|
|
- einem Unterstrich enthalten.
|
|
|
|
|
|
|
+ im Namen einer Methode. Methoden, die als "public" deklariert sind, sollten nie
|
|
|
|
|
+ einen Unterstrich enthalten.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Funktionen im globalen Bereich (auch "floating functions" genannt) sind gestattet
|
|
|
|
|
- aber es wird von Ihnen in den meisten Fällen abgeraten. Diese Funktionen sollten
|
|
|
|
|
|
|
+ Funktionen im globalen Bereich (auch "floating functions" genannt) sind gestattet,
|
|
|
|
|
+ aber es wird in den meisten Fällen davon abgeraten. Diese Funktionen sollten
|
|
|
in einer statischen Klasse gewrappt werden.
|
|
in einer statischen Klasse gewrappt werden.
|
|
|
</para>
|
|
</para>
|
|
|
</sect2>
|
|
</sect2>
|
|
@@ -350,29 +350,29 @@ widgetFactory()
|
|
|
<title>Variablen</title>
|
|
<title>Variablen</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Variablennamen dürfen nur Alphanummerische Zeichen enthalten. Unterstriche sind
|
|
|
|
|
- nicht gestattet. Nummern sind in Variablen gestattet in den meisten Fällen aber
|
|
|
|
|
|
|
+ Variablennamen dürfen nur alphanumerische Zeichen enthalten. Unterstriche sind
|
|
|
|
|
+ nicht gestattet. Ziffern sind in Variablen gestattet in den meisten Fällen aber
|
|
|
nicht empfohlen.
|
|
nicht empfohlen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Für Instanzvariablen die mit dem "private" oder "protected" Modifikator deklariert
|
|
|
|
|
- werden, muß das erste Zeichen des Funktionsnamens ein einzelner Unterstrich sein.
|
|
|
|
|
- Das ist die einzige akzeptierte Anwendung eines Unterstriches in einem variablen
|
|
|
|
|
- Namen. Klassenvariablen welche als "public" deklariert werden sollten nie mit einem
|
|
|
|
|
|
|
+ Für Instanzvariablen, die mit dem Modifikator "private" oder "protected" deklariert
|
|
|
|
|
+ werden, muss das erste Zeichen des Funktionsnamens ein einzelner Unterstrich sein.
|
|
|
|
|
+ Das ist die einzige akzeptierte Anwendung eines Unterstriches in einem Variablennamen.
|
|
|
|
|
+ Klassenvariablen, welche als "public" deklariert werden, sollten nie mit einem
|
|
|
Unterstrich beginnen.
|
|
Unterstrich beginnen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Wie bei Funktionsnamen (siehe Abschnitt 3.3) müssen Variablennamen immer mit einem
|
|
Wie bei Funktionsnamen (siehe Abschnitt 3.3) müssen Variablennamen immer mit einem
|
|
|
- Kleinbuchstaben starten und der "camelCaps" Schreibweise folgen.
|
|
|
|
|
|
|
+ Kleinbuchstaben starten und der "camelCaps"-Schreibweise folgen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Wortreichtum wird generell befürwortet. Variablen sollen immer so wortreich wie
|
|
|
|
|
- möglich sein um die Daten zu beschreiben die der Entwickler in Ihnen zu speichern
|
|
|
|
|
- gedenkt. Von gedrängte Variablennamen wie "<varname>$i</varname>" und
|
|
|
|
|
- "<varname>$n</varname>" wird abgeraten für alles außer die kleinsten Schleifen.
|
|
|
|
|
|
|
+ Ausführlichkeit wird generell befürwortet. Variablen sollen immer so ausführlich wie
|
|
|
|
|
+ möglich sein, um die Daten zu beschreiben, die der Entwickler in ihnen zu speichern
|
|
|
|
|
+ gedenkt. Von knappen Variablennamen wie "<varname>$i</varname>" und
|
|
|
|
|
+ "<varname>$n</varname>" wird abgeraten für alles außer für kleinste Schleifen.
|
|
|
Wenn eine Schleife mehr als 20 Codezeilen enthält sollten die Index-Variablen einen
|
|
Wenn eine Schleife mehr als 20 Codezeilen enthält sollten die Index-Variablen einen
|
|
|
ausführlicheren Namen haben.
|
|
ausführlicheren Namen haben.
|
|
|
</para>
|
|
</para>
|
|
@@ -382,24 +382,24 @@ widgetFactory()
|
|
|
<title>Konstanten</title>
|
|
<title>Konstanten</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Konstanten können beides enthalten, sowohl Alphanummerische Zeichen als auch
|
|
|
|
|
- Unterstriche. Nummern sind in Konstantennamen gestattet.
|
|
|
|
|
|
|
+ Konstanten können beides enthalten, sowohl alphanumerische Zeichen als auch
|
|
|
|
|
+ Unterstriche. Ziffern sind in Konstantennamen gestattet.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Alle Buchstaben die in Konstantenname verwendet werden müssen großgeschrieben haben,
|
|
|
|
|
- wärend Wörter in einem Konstantennamen durch Unterstriche getrennt werden müssen.
|
|
|
|
|
|
|
+ Alle Buchstaben, die in Konstantenname verwendet werden, müssen großgeschrieben werden,
|
|
|
|
|
+ während Wörter in einem Konstantennamen durch Unterstriche getrennt werden müssen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Zum Beispiel ist <constant>EMBED_SUPPRESS_EMBED_EXCEPTION</constant> gestattet aber
|
|
|
|
|
|
|
+ Zum Beispiel ist <constant>EMBED_SUPPRESS_EMBED_EXCEPTION</constant> gestattet, aber
|
|
|
<constant>EMBED_SUPPRESSEMBEDEXCEPTION</constant> nicht.
|
|
<constant>EMBED_SUPPRESSEMBEDEXCEPTION</constant> nicht.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Konstanten müssen als Klassenkonstanten definiert werden mit dem "const"
|
|
|
|
|
- Modifikator. Die Definition von Konstanten im globalen Bereich mit der "define"
|
|
|
|
|
- Funktion ist gestattet aber es wird es wird stärkstens davon abgeraten.
|
|
|
|
|
|
|
+ Konstanten müssen als Klassenkonstanten mit dem Modifikator "const" definiert
|
|
|
|
|
+ werden. Die Definition von Konstanten im globalen Bereich mit der "define"
|
|
|
|
|
+ Funktion ist gestattet, aber es wird es wird stärkstens davon abgeraten.
|
|
|
</para>
|
|
</para>
|
|
|
</sect2>
|
|
</sect2>
|
|
|
</sect1>
|
|
</sect1>
|
|
@@ -411,8 +411,8 @@ widgetFactory()
|
|
|
<title>PHP Code Abgrenzung</title>
|
|
<title>PHP Code Abgrenzung</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- <acronym>PHP</acronym> Code muß immer mit der kompletten Form des
|
|
|
|
|
- Standard-<acronym>PHP</acronym> Tags abgegrenzt sein:
|
|
|
|
|
|
|
+ <acronym>PHP</acronym> Code muss immer mit der kompletten Form des
|
|
|
|
|
+ Standard-<acronym>PHP</acronym>-Tags abgegrenzt sein:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
<programlisting language="php"><![CDATA[
|
|
@@ -422,8 +422,8 @@ widgetFactory()
|
|
|
]]></programlisting>
|
|
]]></programlisting>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Kurze Tags sind nie erlaubt. Für Dateien die nur <acronym>PHP</acronym> Code
|
|
|
|
|
- enthalten, darf das schließende Tag nie angegeben werden (Siehe <link
|
|
|
|
|
|
|
+ Kurze Tags sind nie erlaubt. Für Dateien, die nur <acronym>PHP</acronym>-Code
|
|
|
|
|
+ enthalten, darf das schließende Tag nicht angegeben werden (Siehe <link
|
|
|
linkend="coding-standard.php-file-formatting.general">generelle
|
|
linkend="coding-standard.php-file-formatting.general">generelle
|
|
|
Standards</link>).
|
|
Standards</link>).
|
|
|
</para>
|
|
</para>
|
|
@@ -437,7 +437,7 @@ widgetFactory()
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Wenn ein String ein Literal ist (er also keine Variablenvertreter enthält),
|
|
Wenn ein String ein Literal ist (er also keine Variablenvertreter enthält),
|
|
|
- sollte immer das Apostroph oder "einzelne Anführungszeichen" verwendet werden um
|
|
|
|
|
|
|
+ sollte immer das Apostroph oder "einzelne Anführungszeichen" verwendet werden, um
|
|
|
den String abzugrenzen:
|
|
den String abzugrenzen:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -451,7 +451,7 @@ $a = 'Beispiel String';
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Wenn ein literaler String selbst Apostrophe enthält, ist es gestattet den String
|
|
Wenn ein literaler String selbst Apostrophe enthält, ist es gestattet den String
|
|
|
- mit Anführungszeichen oder "doppeltes Anführungszeichen" abzugrenzen. Das ist
|
|
|
|
|
|
|
+ mit Anführungszeichen oder "doppelten Anführungszeichen" abzugrenzen. Das ist
|
|
|
speziell für <constant>SQL</constant> Anweisungen nützlich:
|
|
speziell für <constant>SQL</constant> Anweisungen nützlich:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -461,16 +461,16 @@ $sql = "SELECT `id`, `name` from `people` "
|
|
|
]]></programlisting>
|
|
]]></programlisting>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Diese Syntax ist zu bevorzugen, im Gegensatz zum Ausbruch von Apostrophs, da Sie
|
|
|
|
|
|
|
+ Diese Syntax ist zu bevorzugen, im Gegensatz zum Entwerten des Apostrophs, da sie
|
|
|
viel einfacher lesbar ist.
|
|
viel einfacher lesbar ist.
|
|
|
</para>
|
|
</para>
|
|
|
</sect3>
|
|
</sect3>
|
|
|
|
|
|
|
|
<sect3 id="coding-standard.coding-style.strings.variable-substitution">
|
|
<sect3 id="coding-standard.coding-style.strings.variable-substitution">
|
|
|
- <title>Variabler Austausch</title>
|
|
|
|
|
|
|
+ <title>Variablensubstitution</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Variabler Austausch ist gestatten bei Verwendung einer der Formen:
|
|
|
|
|
|
|
+ Variablensubstitution ist gestattet bei Verwendung einer der Formen:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
<programlisting language="php"><![CDATA[
|
|
@@ -492,8 +492,8 @@ $greeting = "Hallo ${name}, willkommen zurück!";
|
|
|
<title>Verbinden von Strings</title>
|
|
<title>Verbinden von Strings</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Strings müssen verbunden werden indem man den "." Operator verwendet. Ein
|
|
|
|
|
- Leerzeichen muß immer vor und nach dem "." Operator hinzugefügt werden um die
|
|
|
|
|
|
|
+ Strings müssen verbunden werden, indem man den "." Operator verwendet. Ein
|
|
|
|
|
+ Leerzeichen muss immer vor und nach dem "." Operator hinzugefügt werden, um die
|
|
|
Lesbarkeit zu erhöhen:
|
|
Lesbarkeit zu erhöhen:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -502,8 +502,8 @@ $company = 'Zend' . ' ' . 'Technologies';
|
|
|
]]></programlisting>
|
|
]]></programlisting>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Wenn Strings mit dem "." Operator verbunden werden, ist es empfohlen die
|
|
|
|
|
- Anweisung in mehrere Zeilen umzubrechen um die Lesbarkeit zu erhöhen. In diesen
|
|
|
|
|
|
|
+ Wenn Strings mit dem "." Operator verbunden werden, ist es empfohlen, die
|
|
|
|
|
+ Anweisung in mehrere Zeilen umzubrechen, um die Lesbarkeit zu erhöhen. In diesen
|
|
|
Fällen sollte jede folgende Zeile mit Leerraum aufgefüllt werden so das der "."
|
|
Fällen sollte jede folgende Zeile mit Leerraum aufgefüllt werden so das der "."
|
|
|
Operator genau unterhalb des "=" Operators ist:
|
|
Operator genau unterhalb des "=" Operators ist:
|
|
|
</para>
|
|
</para>
|
|
@@ -520,18 +520,18 @@ $sql = "SELECT `id`, `name` FROM `people` "
|
|
|
<title>Arrays</title>
|
|
<title>Arrays</title>
|
|
|
|
|
|
|
|
<sect3 id="coding-standard.coding-style.arrays.numerically-indexed">
|
|
<sect3 id="coding-standard.coding-style.arrays.numerically-indexed">
|
|
|
- <title>Nummerisch indizierte Arrays</title>
|
|
|
|
|
|
|
+ <title>Numerisch indizierte Arrays</title>
|
|
|
|
|
|
|
|
- <para>Negative Nummern sind in Indezes nicht gestattet.</para>
|
|
|
|
|
|
|
+ <para>Negative Zahlen sind in Indizes nicht gestattet.</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Ein indiziertes Array kann mit mit irgendeiner nicht-negativen Nummer beginnen,
|
|
|
|
|
- trotzdem sind alle BasisIndex neben 0 nicht erlaubt.
|
|
|
|
|
|
|
+ Ein indiziertes Array kann mit irgendeiner nicht-negativen Zahl beginnen,
|
|
|
|
|
+ trotzdem sind alle BasisIndices außer 0 nicht erlaubt.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Wenn indizierte Arrays mit dem <type>Array</type> Funktion deklariert werden,
|
|
|
|
|
- muß ein folgendes Leerzeichen nach jeder Kommabegrenzung hinzugefügt werden um
|
|
|
|
|
|
|
+ Wenn indizierte Arrays mit der <type>Array</type>-Funktion deklariert werden,
|
|
|
|
|
+ muß ein folgendes Leerzeichen nach jeder Kommabegrenzung hinzugefügt werden, um
|
|
|
die Lesbarkeit zu erhöhen:
|
|
die Lesbarkeit zu erhöhen:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -540,9 +540,9 @@ $sampleArray = array(1, 2, 3, 'Zend', 'Studio');
|
|
|
]]></programlisting>
|
|
]]></programlisting>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Es ist gestattet mehrzeilige indizierte Arrays zu definieren bei Verwendung des
|
|
|
|
|
- "array" Konstrukts. In diesem Fall, muß jede folgende Zeile mit Leerzeichen
|
|
|
|
|
- aufgefüllt werden so das der Beginn jeder Zeile ausgerichtet ist:
|
|
|
|
|
|
|
+ Es ist bei Verwendung des "array" Konstrukts gestattet, mehrzeilige indizierte
|
|
|
|
|
+ Arrays zu definieren. In diesem Fall, muss jede folgende Zeile mit Leerzeichen
|
|
|
|
|
+ aufgefüllt werden, so dass der Beginn jeder Zeile ausgerichtet ist:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
<programlisting language="php"><![CDATA[
|
|
@@ -552,12 +552,12 @@ $sampleArray = array(1, 2, 3, 'Zend', 'Studio',
|
|
|
]]></programlisting>
|
|
]]></programlisting>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Alternativ kann das beginnende Array Element in der folgenden Zeile beginnen.
|
|
|
|
|
|
|
+ Alternativ kann das beginnende Array-Element in der folgenden Zeile beginnen.
|
|
|
Wenn das so ist, sollte es um ein Einrückungslevel tiefer stehen als die
|
|
Wenn das so ist, sollte es um ein Einrückungslevel tiefer stehen als die
|
|
|
- Zeile welche die Array Deklaration enthält und alle folgenden Zeilen sollten
|
|
|
|
|
|
|
+ Zeile, welche die Array-Deklaration enthält und alle folgenden Zeilen sollten
|
|
|
die gleiche Einrückung haben; der schließende Teil sollte in einer eigenen
|
|
die gleiche Einrückung haben; der schließende Teil sollte in einer eigenen
|
|
|
- Zeile stehen und das gleiche Einrückungslevel haben wie die Zeile welche die
|
|
|
|
|
- Array Deklaration enthält:
|
|
|
|
|
|
|
+ Zeile stehen und das gleiche Einrückungslevel haben wie die Zeile, welche die
|
|
|
|
|
+ Array-Deklaration enthält:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
<programlisting language="php"><![CDATA[
|
|
@@ -571,8 +571,8 @@ $sampleArray = array(
|
|
|
<para>
|
|
<para>
|
|
|
Wenn die letztere Deklaration verwendet wird, empfehlen wir ein endendes Komma
|
|
Wenn die letztere Deklaration verwendet wird, empfehlen wir ein endendes Komma
|
|
|
für das letzte Element im Array zu verwenden; das minimiert das Problem beim
|
|
für das letzte Element im Array zu verwenden; das minimiert das Problem beim
|
|
|
- Hinzufügen von neuen Elements bei zusätzlichen Zeilen, und hilft
|
|
|
|
|
- sicherzustellen das durch ein fehlendes Komma keine Parsing Fehler auftreten.
|
|
|
|
|
|
|
+ Hinzufügen von neuen Elements mit zusätzlichen Zeilen und hilft
|
|
|
|
|
+ sicherzustellen, dass durch ein fehlendes Komma keine Parsing-Fehler auftreten.
|
|
|
</para>
|
|
</para>
|
|
|
</sect3>
|
|
</sect3>
|
|
|
|
|
|
|
@@ -580,9 +580,9 @@ $sampleArray = array(
|
|
|
<title>Assoziative Arrays</title>
|
|
<title>Assoziative Arrays</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Wenn assoziative Arrays mit dem <type>Array</type> Konstrukt deklariert werden,
|
|
|
|
|
- ist das Umbrechen der Anweisung in mehrere Zeilen gestattet. In diesem Fall muß
|
|
|
|
|
- jede folgende Linie mit Leerraum aufgefüllt werden so das beide, der Schlüssel
|
|
|
|
|
|
|
+ Wenn assoziative Arrays mit dem <type>Array</type>-Konstrukt deklariert werden,
|
|
|
|
|
+ ist das Umbrechen der Anweisung in mehrere Zeilen gestattet. In diesem Fall muss
|
|
|
|
|
+ jede folgende Zeile mit Leerraum aufgefüllt werden, so dass sowohl der Schlüssel
|
|
|
und der Wert untereinander stehen:
|
|
und der Wert untereinander stehen:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -592,13 +592,13 @@ $sampleArray = array('firstKey' => 'firstValue',
|
|
|
]]></programlisting>
|
|
]]></programlisting>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Alternativ kann das beginnende Array Element in der folgenden Zeile beginnen.
|
|
|
|
|
|
|
+ Alternativ kann das beginnende Array-Element in der folgenden Zeile beginnen.
|
|
|
Wenn das so ist, sollte es um ein Einrückungslevel tiefer stehen als die
|
|
Wenn das so ist, sollte es um ein Einrückungslevel tiefer stehen als die
|
|
|
- Zeile welche die Array Deklaration enthält und alle folgenden Zeilen sollten
|
|
|
|
|
|
|
+ Zeile, welche die Array-Deklaration enthält und alle folgenden Zeilen sollten
|
|
|
die gleiche Einrückung haben; der schließende Teil sollte in einer eigenen
|
|
die gleiche Einrückung haben; der schließende Teil sollte in einer eigenen
|
|
|
- Zeile stehen und das gleiche Einrückungslevel haben wie die Zeile welche die
|
|
|
|
|
- Array Deklaration enthält. Wegen der Lesbarkeit sollten die verschiedenen
|
|
|
|
|
- "=>" Operatoren so eingerückt werden das Sie untereinander stehen.
|
|
|
|
|
|
|
+ Zeile stehen und das gleiche Einrückungslevel haben wie die Zeile, welche die
|
|
|
|
|
+ Array-Deklaration enthält. Wegen der Lesbarkeit sollten die verschiedenen
|
|
|
|
|
+ "=>" Operatoren so eingerückt werden, dass sie untereinander stehen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
<programlisting language="php"><![CDATA[
|
|
@@ -611,8 +611,8 @@ $sampleArray = array(
|
|
|
<para>
|
|
<para>
|
|
|
Wenn die letztere Deklaration verwendet wird, empfehlen wir ein endendes Komma
|
|
Wenn die letztere Deklaration verwendet wird, empfehlen wir ein endendes Komma
|
|
|
für das letzte Element im Array zu verwenden; das minimiert das Problem beim
|
|
für das letzte Element im Array zu verwenden; das minimiert das Problem beim
|
|
|
- Hinzufügen von neuen Elements bei zusätzlichen Zeilen, und hilft
|
|
|
|
|
- sicherzustellen das durch ein fehlendes Komma keine Parsing Fehler auftreten.
|
|
|
|
|
|
|
+ Hinzufügen von neuen Elements bei zusätzlichen Zeilen und hilft
|
|
|
|
|
+ sicherzustellen, dass durch ein fehlendes Komma keine Parsing-Fehler auftreten.
|
|
|
</para>
|
|
</para>
|
|
|
</sect3>
|
|
</sect3>
|
|
|
</sect2>
|
|
</sect2>
|
|
@@ -621,7 +621,7 @@ $sampleArray = array(
|
|
|
<title>Klassen</title>
|
|
<title>Klassen</title>
|
|
|
|
|
|
|
|
<sect3 id="coding-standard.coding-style.classes.declaration">
|
|
<sect3 id="coding-standard.coding-style.classes.declaration">
|
|
|
- <title>Klassen Deklarationen</title>
|
|
|
|
|
|
|
+ <title>Klassen-Deklarationen</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Klassen müssen entsprechend der Zend Framework Namenskonvention benannt werden.
|
|
Klassen müssen entsprechend der Zend Framework Namenskonvention benannt werden.
|
|
@@ -632,22 +632,22 @@ $sampleArray = array(
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Jede Klasse muß einen Dokumentationsblock haben der dem PHPDocumentor Standard
|
|
|
|
|
|
|
+ Jede Klasse muss einen Dokumentationsblock haben der dem PHPDocumentor-Standard
|
|
|
entspricht.
|
|
entspricht.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Jeder Code in der Klasse muß mit vier Leerzeichen eingerückt sein.
|
|
|
|
|
|
|
+ Jeder Code in der Klasse muss mit vier Leerzeichen eingerückt sein.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Nur eine Klasse ist in jeder <acronym>PHP</acronym> Datei gestattet.
|
|
|
|
|
|
|
+ Nur eine Klasse ist in jeder <acronym>PHP</acronym>-Datei gestattet.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Das Platzieren von zusätzlichem Code in Klassendateien ist gestattet aber es
|
|
|
|
|
|
|
+ Das Platzieren von zusätzlichem Code in Klassendateien ist gestattet, aber es
|
|
|
wird davon abgeraten. In solchen Dateien müssen zwei leere Zeilen die Klasse von
|
|
wird davon abgeraten. In solchen Dateien müssen zwei leere Zeilen die Klasse von
|
|
|
- jedem zusätzlichen <acronym>PHP</acronym> Code in der Datei seperieren.
|
|
|
|
|
|
|
+ jedem zusätzlichen <acronym>PHP</acronym>-Code in der Datei trennen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
@@ -666,8 +666,8 @@ class SampleClass
|
|
|
]]></programlisting>
|
|
]]></programlisting>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Klassen die andere Klassen erweitern oder welche Interfaces implementieren
|
|
|
|
|
- sollen Ihre Abhängigkeit auf der gleichen Zeile deklarieren wenn das möglich
|
|
|
|
|
|
|
+ Klassen, die andere Klassen erweitern oder welche Interfaces implementieren,
|
|
|
|
|
+ sollen ihre Abhängigkeit auf der gleichen Zeile deklarieren, wenn das möglich
|
|
|
ist.
|
|
ist.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -695,8 +695,8 @@ class SampleClass
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Wenn die Klasse mehrere Interfaces implementiert und die Deklaration die
|
|
Wenn die Klasse mehrere Interfaces implementiert und die Deklaration die
|
|
|
- maximale Zeilenlänge übersteigt, ist nach jedem Komma umzubrechen und die
|
|
|
|
|
- Interfaces zu separieren, und die Namen des Interfaces so einzurücken das Sie
|
|
|
|
|
|
|
+ maximale Zeilenlänge übersteigt, ist nach jedem Komma umzubrechen und sind die
|
|
|
|
|
+ Interfaces zu separieren und die Namen der Interfaces so einzurücken, dass sie
|
|
|
untereinander stehen.
|
|
untereinander stehen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -718,17 +718,17 @@ class SampleClass
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Jede Variable die in der Klasse deklariert wird muß am Beginn der Klasse
|
|
|
|
|
- ausgelistet werden, vor der Deklaration von allen Methoden.
|
|
|
|
|
|
|
+ Jede Variable, die in der Klasse deklariert wird, muss am Beginn der Klasse
|
|
|
|
|
+ vor der Deklaration von allen Methoden aufgelistet werden.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Das <emphasis>var</emphasis> Konstrukt ist nicht gestattet. Klassenvariablen
|
|
Das <emphasis>var</emphasis> Konstrukt ist nicht gestattet. Klassenvariablen
|
|
|
definieren Ihre Sichtbarkeit durch die Verwendung des
|
|
definieren Ihre Sichtbarkeit durch die Verwendung des
|
|
|
- <property>private</property>, <property>protected</property>, oder
|
|
|
|
|
- <property>public</property> Modifikatoren. Das gestatten von direktem Zugriff
|
|
|
|
|
- auf Klassenvariablen durch deren Deklaration als public ist gestattet aber es
|
|
|
|
|
- wird davon abgeraten da hierfür Zugriffsmethoden verwendet werden sollten (set
|
|
|
|
|
|
|
+ <property>private</property>, <property>protected</property> oder
|
|
|
|
|
+ <property>public</property> Modifikatoren. Das Gestatten von direktem Zugriff
|
|
|
|
|
+ auf Klassenvariablen durch deren Deklaration als public ist gestattet, aber es
|
|
|
|
|
+ wird davon abgeraten, da hierfür Zugriffsmethoden verwendet werden sollten (set
|
|
|
& get).
|
|
& get).
|
|
|
</para>
|
|
</para>
|
|
|
</sect3>
|
|
</sect3>
|
|
@@ -746,7 +746,7 @@ class SampleClass
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Methoden innerhalb von Klassen müssen immer Ihre Sichtbarkeit durch Verwendung
|
|
|
|
|
|
|
+ Methoden innerhalb von Klassen müssen immer ihre Sichtbarkeit durch Verwendung
|
|
|
einer der <property>private</property>, <property>protected</property>, oder
|
|
einer der <property>private</property>, <property>protected</property>, oder
|
|
|
<property>public</property> Modifikatoren definieren.
|
|
<property>public</property> Modifikatoren definieren.
|
|
|
</para>
|
|
</para>
|
|
@@ -816,7 +816,7 @@ class Foo
|
|
|
|
|
|
|
|
<note>
|
|
<note>
|
|
|
<para>
|
|
<para>
|
|
|
- <emphasis>Notiz</emphasis>: Die Übergabe per Referenz ist die einzige
|
|
|
|
|
|
|
+ <emphasis>Notiz</emphasis>: Die Übergabe per Referenz ist der einzige
|
|
|
erlaubt Mechanismus für die Übergabe von Parametern in der Deklaration
|
|
erlaubt Mechanismus für die Übergabe von Parametern in der Deklaration
|
|
|
einer Funktion:
|
|
einer Funktion:
|
|
|
</para>
|
|
</para>
|
|
@@ -842,7 +842,7 @@ class Foo
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Der Rückgabewert darf nicht in Klammern stehen. Das kann die Lesbarkeit
|
|
Der Rückgabewert darf nicht in Klammern stehen. Das kann die Lesbarkeit
|
|
|
- behindern und zusätzlich den Code unterbrechen wenn eine Methode später auf
|
|
|
|
|
|
|
+ behindern und zusätzlich den Code unterbrechen, wenn eine Methode später auf
|
|
|
Rückgabe durch Referenz geändert wird.
|
|
Rückgabe durch Referenz geändert wird.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -876,8 +876,8 @@ class Foo
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Funktionsargumente sollten durch ein einzelnes trennendes Leerzeichen nach dem
|
|
Funktionsargumente sollten durch ein einzelnes trennendes Leerzeichen nach dem
|
|
|
- Komma Trennzeichen getrennt werden. Das folgende ist ein Beispiel für einen
|
|
|
|
|
- akzeptierbaren Aufruf einer Funktion die drei Argumente benötigt:
|
|
|
|
|
|
|
+ Komma-Trennzeichen getrennt werden. Das folgende ist ein Beispiel für einen
|
|
|
|
|
+ akzeptierbaren Aufruf einer Funktion, die drei Argumente benötigt:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
<programlisting language="php"><![CDATA[
|
|
@@ -886,14 +886,14 @@ threeArguments(1, 2, 3);
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Übergabe von Referenzen zur Laufzeit ist strengstens verboten. Siehe die Sektion
|
|
Übergabe von Referenzen zur Laufzeit ist strengstens verboten. Siehe die Sektion
|
|
|
- für Funktions Deklarationen für den richtigen Weg um Funktionsargumente per
|
|
|
|
|
|
|
+ für Funktionsdeklarationen für den richtigen Weg um Funktionsargumente per
|
|
|
Referenz zu übergeben.
|
|
Referenz zu übergeben.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Durch die Übergabe von Arrays als Argument für eine Funktion, kann der
|
|
Durch die Übergabe von Arrays als Argument für eine Funktion, kann der
|
|
|
Funktionsaufruf den "array" Hinweis enthalten und kann in mehrere Zeilen geteilt
|
|
Funktionsaufruf den "array" Hinweis enthalten und kann in mehrere Zeilen geteilt
|
|
|
- werden um die Lesbarkeit zu erhöhen. In solchen Fällen sind die normalen
|
|
|
|
|
|
|
+ werden, um die Lesbarkeit zu erhöhen. In solchen Fällen sind die normalen
|
|
|
Richtlinien für das Schreiben von Arrays trotzdem noch anzuwenden:
|
|
Richtlinien für das Schreiben von Arrays trotzdem noch anzuwenden:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -920,10 +920,10 @@ threeArguments(array(
|
|
|
<title>If/Else/Elseif</title>
|
|
<title>If/Else/Elseif</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Kontrollanweisungen die auf den <emphasis>if</emphasis> und
|
|
|
|
|
|
|
+ Kontrollanweisungen, die auf den <emphasis>if</emphasis> und
|
|
|
<emphasis>elseif</emphasis> Konstrukten beruhen müssen ein einzelnes
|
|
<emphasis>elseif</emphasis> Konstrukten beruhen müssen ein einzelnes
|
|
|
Leerzeichen vor der öffnenden Klammer der bedingten Anweisung und ein
|
|
Leerzeichen vor der öffnenden Klammer der bedingten Anweisung und ein
|
|
|
- einzelnes Leerzeichen nach der schließenden Klammer.
|
|
|
|
|
|
|
+ einzelnes Leerzeichen nach der schließenden Klammer haben.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
@@ -952,7 +952,7 @@ if ($a != 2) {
|
|
|
Zeilenlänge</link> ist, und sie mehrere Anweisungen hat, kann die
|
|
Zeilenlänge</link> ist, und sie mehrere Anweisungen hat, kann die
|
|
|
Kontrollanweisung in mehrere Zeilen gebrochen werden. In solchen Fällen, ist
|
|
Kontrollanweisung in mehrere Zeilen gebrochen werden. In solchen Fällen, ist
|
|
|
die Zeile vor dem logischen Operator zu brechen und die Zeile so einzurücken
|
|
die Zeile vor dem logischen Operator zu brechen und die Zeile so einzurücken
|
|
|
- das Sie unter dem ersten Zeichen der Kontrollanweisung steht. Der schließende
|
|
|
|
|
|
|
+ das sie unter dem ersten Zeichen der Kontrollanweisung steht. Der schließende
|
|
|
Teil der Kontrollanweisung ist mit der öffnenden Klammer in einer eigenen Zeile
|
|
Teil der Kontrollanweisung ist mit der öffnenden Klammer in einer eigenen Zeile
|
|
|
zu platzieren, wobei ein einzelnes Leerzeichen die zwei trennen muß, und der
|
|
zu platzieren, wobei ein einzelnes Leerzeichen die zwei trennen muß, und der
|
|
|
Einrückungslevel identisch mit der öffenden Kontrollanweisung sein ist.
|
|
Einrückungslevel identisch mit der öffenden Kontrollanweisung sein ist.
|
|
@@ -969,7 +969,7 @@ if (($a == $b)
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Die Einrückung des späteren Deklarationsformats dient der Vorbeugung von
|
|
Die Einrückung des späteren Deklarationsformats dient der Vorbeugung von
|
|
|
- Problemen beim Hinzufügen oder entfernen von Klauseln von der Kontrollanweisung
|
|
|
|
|
|
|
+ Problemen beim Hinzufügen oder Entfernen von Klauseln von der Kontrollanweisung
|
|
|
bei späteren Revisionen.
|
|
bei späteren Revisionen.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -1009,8 +1009,8 @@ if (($a == $b)
|
|
|
]]></programlisting>
|
|
]]></programlisting>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- <acronym>PHP</acronym> erlaubt das Anweisungen in einigen Fällen auch ohne
|
|
|
|
|
- Klammern zu schreiben. Dieser Coding Standard macht keine Unterscheidungen und
|
|
|
|
|
|
|
+ <acronym>PHP</acronym> erlaubt in einigen Fällen auch Anweisungen ohne
|
|
|
|
|
+ Klammern. Dieser Coding Standard macht keine Unterscheidungen und
|
|
|
es müssen alle "if", "elseif" oder "else" Anweisungen in Klammern geschrieben
|
|
es müssen alle "if", "elseif" oder "else" Anweisungen in Klammern geschrieben
|
|
|
werden.
|
|
werden.
|
|
|
</para>
|
|
</para>
|
|
@@ -1021,8 +1021,8 @@ if (($a == $b)
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Kontrollanweisungen die mit der "switch" Anweisung geschrieben werden müssen ein
|
|
Kontrollanweisungen die mit der "switch" Anweisung geschrieben werden müssen ein
|
|
|
- einzelnes Leerzeichen vor der öffnenden Klammer der Bedingten Anweisung
|
|
|
|
|
- besitzen, und auch nach der schließenden Klammer.
|
|
|
|
|
|
|
+ einzelnes Leerzeichen vor der öffnenden Klammer der bedingten Anweisung
|
|
|
|
|
+ besitzen und auch nach der schließenden Klammer.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
@@ -1052,12 +1052,12 @@ switch ($numPeople) {
|
|
|
<note>
|
|
<note>
|
|
|
<para>
|
|
<para>
|
|
|
<emphasis>Notiz</emphasis>: Es ist machmal nützlich eine
|
|
<emphasis>Notiz</emphasis>: Es ist machmal nützlich eine
|
|
|
- <property>case</property> Anweisung zu schreiben, die durch das nächste case
|
|
|
|
|
- fällt indem innerhalb solcher Fälle kein <property>break</property> oder
|
|
|
|
|
|
|
+ <property>case</property>-Anweisung zu schreiben, die durch das nächste case
|
|
|
|
|
+ fällt, indem innerhalb solcher Fälle kein <property>break</property> oder
|
|
|
<property>return</property> angegeben wird. Um diese Fälle von Fehlern zu
|
|
<property>return</property> angegeben wird. Um diese Fälle von Fehlern zu
|
|
|
- unterscheiden, sollte jede <property>case</property> Anweisung in der
|
|
|
|
|
|
|
+ unterscheiden, sollte jede <property>case</property>-Anweisung, in der
|
|
|
<property>break</property> oder <property>return</property> unterlassen
|
|
<property>break</property> oder <property>return</property> unterlassen
|
|
|
- werden einen Kommentar enthalten der anzeigt dass das break gewünschtermaßen
|
|
|
|
|
|
|
+ werden, einen Kommentar enthalten, der anzeigt, dass das break gewünschtermaßen
|
|
|
unterdrückt wurde.
|
|
unterdrückt wurde.
|
|
|
</para>
|
|
</para>
|
|
|
</note>
|
|
</note>
|
|
@@ -1068,19 +1068,19 @@ switch ($numPeople) {
|
|
|
<title>Inline Dokumentation</title>
|
|
<title>Inline Dokumentation</title>
|
|
|
|
|
|
|
|
<sect3 id="coding-standards.inline-documentation.documentation-format">
|
|
<sect3 id="coding-standards.inline-documentation.documentation-format">
|
|
|
- <title>Dokumentations Format</title>
|
|
|
|
|
|
|
+ <title>Dokumentationsformat</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Alle Dokumentations Blöcke ("DocBlock") müssel mit dem phpDocumentor Format
|
|
|
|
|
- kompatibel sein. Die Beschreibung des phpDocumentor Formats is jenseits der
|
|
|
|
|
- Reichweite dieses Dokuments. Für weiterführende Informationen siehe:
|
|
|
|
|
|
|
+ Alle Dokumentationsblöcke ("DocBlock") müssen mit dem phpDocumentor-Format
|
|
|
|
|
+ kompatibel sein. Die Beschreibung des phpDocumentor-Formats ist nicht
|
|
|
|
|
+ Thema dieses Dokuments. Für weiterführende Informationen siehe:
|
|
|
<ulink url="http://phpdoc.org/">http://phpdoc.org"></ulink>
|
|
<ulink url="http://phpdoc.org/">http://phpdoc.org"></ulink>
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Alle Klassen Dateien müssen einen "file-level" Docblock am Beginn jeder Datei
|
|
|
|
|
- und einen "class-level" Docblock direkt überhalb jeder Klasse enthalten.
|
|
|
|
|
- Beispiele solcher Docblocks können anbei gefunden werden.
|
|
|
|
|
|
|
+ Alle Klassendateien müssen einen "file-level" Docblock am Beginn jeder Datei
|
|
|
|
|
+ und einen "class-level" Docblock direkt oberhalb jeder Klasse enthalten.
|
|
|
|
|
+ Beispiele solcher Docblocks können im folgenden gefunden werden.
|
|
|
</para>
|
|
</para>
|
|
|
</sect3>
|
|
</sect3>
|
|
|
|
|
|
|
@@ -1088,8 +1088,8 @@ switch ($numPeople) {
|
|
|
<title>Dateien</title>
|
|
<title>Dateien</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Jede Datei die <acronym>PHP</acronym> Code enthält muß einen Docblock am Beginn
|
|
|
|
|
- der Datei besitzen welcher mindestens diese phpDocumentor Tags enthält:
|
|
|
|
|
|
|
+ Jede Datei, die <acronym>PHP</acronym> Code enthält, muss einen Docblock am Beginn
|
|
|
|
|
+ der Datei besitzen, welcher mindestens diese phpDocumentor-Tags enthält:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<programlisting language="php"><![CDATA[
|
|
<programlisting language="php"><![CDATA[
|
|
@@ -1117,15 +1117,15 @@ switch ($numPeople) {
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Das <property>@package</property> Tag muß hinzugefügt sein, und sollte mit
|
|
Das <property>@package</property> Tag muß hinzugefügt sein, und sollte mit
|
|
|
- dem Namen der Komponente identisch sein dessen Klasse in der Datei enthalten
|
|
|
|
|
- ist; typischerweise wird dieser zwei Segmente haben, den Präfix "Zend", und
|
|
|
|
|
|
|
+ dem Namen der Komponente identisch sein, dessen Klasse in der Datei enthalten
|
|
|
|
|
+ ist; typischerweise wird dieser zwei Segmente haben, das Präfix "Zend", und
|
|
|
den Namen der Komponente.
|
|
den Namen der Komponente.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Das <property>@subpackage</property> Tag ist optional. Wenn es angegeben wird,
|
|
Das <property>@subpackage</property> Tag ist optional. Wenn es angegeben wird,
|
|
|
- sollte es der Name der Subkomponente sein, ohne den Präfix der Klasse. Im
|
|
|
|
|
- obigen Beispiel ist die Annahme das die Klasse in der Datei entweder
|
|
|
|
|
|
|
+ sollte es der Name der Subkomponente sein, ohne das Präfix der Klasse. Im
|
|
|
|
|
+ obigen Beispiel ist die Annahme, dass die Klasse in der Datei entweder
|
|
|
"<classname>Zend_Magic_Wand</classname>" ist oder den Klassennamen als Teil
|
|
"<classname>Zend_Magic_Wand</classname>" ist oder den Klassennamen als Teil
|
|
|
seines Präfixes verwendet.
|
|
seines Präfixes verwendet.
|
|
|
</para>
|
|
</para>
|
|
@@ -1135,7 +1135,7 @@ switch ($numPeople) {
|
|
|
<title>Klassen</title>
|
|
<title>Klassen</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Jede Klasse muß einen Docblock haben welche mindestens diese phpDocumentor Tags
|
|
|
|
|
|
|
+ Jede Klasse muss einen Docblock haben, welcher mindestens diese phpDocumentor Tags
|
|
|
enthält:
|
|
enthält:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -1163,14 +1163,14 @@ switch ($numPeople) {
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Das <property>@package</property> Tag muß hinzugefügt sein, und sollte mit
|
|
Das <property>@package</property> Tag muß hinzugefügt sein, und sollte mit
|
|
|
- der Komponente identisch sein der die Klasse gehört; typischerweise wird
|
|
|
|
|
|
|
+ der Komponente identisch sein, der die Klasse gehört; typischerweise wird
|
|
|
dieser zwei Segmente haben, den Präfix "Zend", und den Namen der Komponente.
|
|
dieser zwei Segmente haben, den Präfix "Zend", und den Namen der Komponente.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
Das <property>@subpackage</property> Tag ist optional. Wenn es angegeben wird,
|
|
Das <property>@subpackage</property> Tag ist optional. Wenn es angegeben wird,
|
|
|
- sollte es der Name der Subkomponente sein, ohne den Präfix der Klasse. Im
|
|
|
|
|
- obigen Beispiel ist die Annahme das die Klasse in der Datei entweder
|
|
|
|
|
|
|
+ sollte es der Name der Subkomponente sein, ohne das Präfix der Klasse. Im
|
|
|
|
|
+ obigen Beispiel ist die Annahme, dass die Klasse in der Datei entweder
|
|
|
"<classname>Zend_Magic_Wand</classname>" ist oder den Klassennamen als Teil
|
|
"<classname>Zend_Magic_Wand</classname>" ist oder den Klassennamen als Teil
|
|
|
seines Präfixes verwendet.
|
|
seines Präfixes verwendet.
|
|
|
</para>
|
|
</para>
|
|
@@ -1180,7 +1180,7 @@ switch ($numPeople) {
|
|
|
<title>Funktionen</title>
|
|
<title>Funktionen</title>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Jede Funktion, auch Objekt Methoden, müssen einen Docblock haben welcher
|
|
|
|
|
|
|
+ Jede Funktion, auch Objektmethoden, müssen einen Docblock haben, welcher
|
|
|
mindestens folgendes enthält:
|
|
mindestens folgendes enthält:
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|
|
@@ -1191,8 +1191,8 @@ switch ($numPeople) {
|
|
|
</itemizedlist>
|
|
</itemizedlist>
|
|
|
|
|
|
|
|
<para>
|
|
<para>
|
|
|
- Es ist nicht notwendig das "@access" Tag zu verwenden, weil das Accesslevel
|
|
|
|
|
- bereits vom "public", "private" oder "protected" Modifikator bekannt ist wenn
|
|
|
|
|
|
|
+ Es ist nicht notwendig, das "@access" Tag zu verwenden, weil das Accesslevel
|
|
|
|
|
+ bereits vom "public", "private" oder "protected" Modifikator bekannt ist, wenn
|
|
|
die Funktion deklariert wird.
|
|
die Funktion deklariert wird.
|
|
|
</para>
|
|
</para>
|
|
|
|
|
|