Explorar o código

[DOCUMENTATION] German:

- some translation

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@18422 44c647ce-9c0f-0410-b52a-842ac1e357ba
thomas %!s(int64=16) %!d(string=hai) anos
pai
achega
737fce37f9

+ 82 - 74
documentation/manual/de/module_specs/Zend_Test-PHPUnit-Db-Quickstart.xml

@@ -5,25 +5,27 @@
     <title>Quickstart</title>
 
     <sect3 id="zend.test.phpunit.db.quickstart.testcase">
-        <title>Setup a Database TestCase</title>
+        <title>Einen Datenbank TestCase erstellen</title>
 
         <para>
-            We are now writting some database tests for the Bug Database example in the
-            <classname>Zend_Db_Table</classname> documentation. First we begin to test that
-            inserting a new bug is actually saved in the database correctly. First we have to
-            setup a test-class that extends
-            <classname>Zend_Test_PHPUnit_DatabaseTestCase</classname>. This class extends the
-            PHPUnit Database Extension, which in turn extends the basic
-            <classname>PHPUnit_Framework_TestCase</classname>. A database testcase contains two
-            abstract methods that have to be implemented, one for the database connection and
-            one for the initial dataset that should be used as seed or fixture.
+            Wir schreiben jetzt einige Datenbank Tests für das Bug Datenbank Beispiel in der
+            Dokumentation von <classname>Zend_Db_Table</classname>. Zuerst beginnen wir zu
+            Testen ob ein neuer Bug der eingefügt wird, in der Datenbank auch wirklich korrekt
+            abgespeichert wird. Zuerst müssen wir eine Test-Klasse erstellen die
+            <classname>Zend_Test_PHPUnit_DatabaseTestCase</classname> erweitert. Diese Klasse
+            erweitert die Datenbank Erweiterung von PHPUnit, welche Ihrerseits den standardmäßigen
+            Basis <classname>PHPUnit_Framework_TestCase</classname> erweitert. Ein Datenbank
+            Testcase enthält zwei abstrakte Methoden die implementiert werden müssen, eine für die
+            Datenbank Verbindung und eine für das initiale Datenset das als Seed oder Fixum
+            verwendet werden soll.
         </para>
 
         <note>
             <para>
-                You should be familiar with the PHPUnit Database extension to follow this quickstart
-                easily. Although all the concepts are explained in this documentation it may be
-                helpful to read the PHPUnit documentation first.
+                Man sollte mit der PHPUnit Datenbank Erweiterung vertraut sein um diesem
+                Quickstart einfach folgen zu können. Auch wenn diese Konzepte in dieser
+                Dokumentation beschrieben werden, kann es hilfreich sein zuerst die Dokumentation
+                von PHPUnit zu lesen.
             </para>
         </note>
 
@@ -62,55 +64,58 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 
         <para>
-            Here we create the database connection and seed some data into the database. Some
-            important details should be noted on this code:
+            Hier erstellen wir die Datenbankverbindung und setzt einige Daten in die Datenbank.
+            Einige wichtige Details über diesen Code sollten notiert werden:
         </para>
 
         <itemizedlist>
             <listitem>
                 <para>
-                    You cannot directly return a <classname>Zend_Db_Adapter_Abstract</classname>
-                    from the <methodname>getConnection()</methodname> method, but a PHPUnit
-                    specific wrapper which is generated with the
-                    <methodname>createZendDbConnection()</methodname> method.
+                    Man kann ein <classname>Zend_Db_Adapter_Abstract</classname> nicht direkt von
+                    der <methodname>getConnection()</methodname> Methode erhalten, aber einen
+                    PHPUnit spezifischen Wrapper welcher mit der Methode
+                    <methodname>createZendDbConnection()</methodname> erstellt wird.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    The database schema (tables and database) is not re-created on every
-                    testrun. The database and tables have to be created manually before running
-                    the tests.
+                    Das Datenbank Schema (Tabellen und Datenbank) wird nicht bei jedem Testlauf
+                    wieder erstellt. Die Datenbank und die Tabellen müssen manuell erstellt werden
+                    bevor die Tests aufgeführt werden.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    Database tests by default truncate the data during
-                    <methodname>setUp()</methodname> and then insert the seed data which is
-                    returned from the <methodname>getDataSet()</methodname> method.
+                    Datenbank Tests schneiden standardmäßig die Daten wärend
+                    <methodname>setUp()</methodname> ab und fügen anschließend die Seed Daten ein,
+                    welche von der Methode <methodname>getDataSet()</methodname> zurückgegeben
+                    werden.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    DataSets have to implement the interface
-                    <classname>PHPUnit_Extensions_Database_DataSet_IDataSet</classname>.
-                    There is a wide range of <acronym>XML</acronym> and YAML configuration file
-                    types included in PHPUnit which allows to specifiy how the tables and datasets
-                    should look like and you should look into the PHPUnit documentation to get the
-                    latest information on these dataset specifications.
+                    DataSets müssen das Interface
+                    <classname>PHPUnit_Extensions_Database_DataSet_IDataSet</classname>
+                    implementieren. Es gibt eine Vielzahl an Typen von <acronym>XML</acronym> und
+                    YAML Konfigurationsdateien die in PHPUnit enthalten sind, welche es erlauben zu
+                    spezifizieren wie Tabellen und Datensätze auszusehen haben und man sollte in die
+                    Dokumentation von PHPUnit schauen um die aktuellsten Informationen über die
+                    Spezifikation diese Datensets zu erhalten.
                 </para>
             </listitem>
         </itemizedlist>
     </sect3>
 
     <sect3 id="zend.test.phpunit.db.quickstart.dataset">
-        <title>Specify a seed dataset</title>
+        <title>Einen Seed Datensatz spezifizieren</title>
 
         <para>
-            In the previous setup for the database testcase we have specified a seed file for the
-            database fixture.  We now create this file specified in the Flat <acronym>XML</acronym> format:
+            Im vorhergehenden Setup für den Datenbank Testcase haben wir eine Seed Datei für das
+            Datenbank Fixum spezifiziert. Jetzt erstellen wir diese Datei im spezifizierten
+            Flat <acronym>XML</acronym> Format:
         </para>
 
         <programlisting language="xml"><![CDATA[
@@ -134,8 +139,8 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 
         <para>
-            We will work with this four entries in the database table "zfbugs" in the next
-            examples. The required MySQL schema for this example is:
+            Wir arbeiten mit diesen vier Einträgen, der Datenbank Tabelle "zfbugs", im nächsten
+            Beispiel. Das benötigte MySQL Schema für dieses Beispiel ist:
         </para>
 
         <programlisting language="sql"><![CDATA[
@@ -154,13 +159,14 @@ PRIMARY KEY  (`bug_id`)
     </sect3>
 
     <sect3 id="zend.test.phpunit.db.quickstart.initial-tests">
-        <title>A few initial database tests</title>
+        <title>Einige initiale Datenbank Tests</title>
 
         <para>
-            Now that we have implemented the two required abstract methods of the
-            <classname>Zend_Test_PHPUnit_DatabaseTestCase</classname> and specified the seed
-            database content, which will be re-created for each new test, we can go about to make
-            our first assertion. This will be a test to insert a new bug.
+            Jetzt, da wie die zwei benötigten Abstrakten Methoden von
+            <classname>Zend_Test_PHPUnit_DatabaseTestCase</classname> implementiert, und den
+            Datenbank Inhalt des Seeds spezifiziert haben, der für jeden neuen Test wieder erzeugt
+            wird, können wir dazu übergehen unsere erste Annahme zu treffen. Das wird ein Test um
+            einen neuen Fehler einzufügen.
         </para>
 
         <programlisting language="php"><![CDATA[
@@ -197,16 +203,17 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 
         <para>
-            Now up to the <methodname>$bugsTable->insert($data);</methodname> everything looks
-            familiar.  The lines after that contain the assertion methodname. We want to verify
-            that after inserting the new bug the database has been updated correctly with the
-            given data.  For this we create a
-            <classname>Zend_Test_PHPUnit_Db_DataSet_QueryDataSet</classname> instance and give
-            it a database connection. We will then tell this dataset that it contains a table
-            "zfbugs" which is given by an <acronym>SQL</acronym> statement. This current/actual state of the
-            database is compared to the expected database state which is contained in another
-            <acronym>XML</acronym> file "bugsInsertIntoAssertions.xml". This <acronym>XML</acronym> file is a slight deviation from
-            the one given above and contains another row with the expected data:
+            Jetzt sieht ab <methodname>$bugsTable->insert($data);</methodname> alles wie gewohnt
+            aus. Die Zeilen danach enthalten den Assertion Methodennamen. Wir wollen prüfen ob, nach
+            dem Einfügen des neuen Fehlers, die Datenbank richtig mit den angegebenen Daten
+            aktualisiert wurde. Hierfür erstellen wir eine Instanz von
+            <classname>Zend_Test_PHPUnit_Db_DataSet_QueryDataSet</classname> und geben Ihr eine
+            Datenbank Verbindung an. Dann sagen wir diesem Datenbank das er eine Tabelle "zfbugs"
+            enthält welche durch ein <acronym>SQL</acronym> Statement angegeben wird. Der aktuelle
+            Status der Datenbank wird mit dem erwarteten Datenbank Status vergleichen der in der
+            anderen <acronym>XML</acronym> Datei "bugsInsertIntoAssertions.xml" enthalten ist.
+            Diese <acronym>XML</acronym> Datei ist eine leichte Abwandlung von der oben angegeben,
+            und enthält eine weitere Zeile mit den erwarteten Daten:
         </para>
 
         <programlisting language="xml"><![CDATA[
@@ -220,10 +227,10 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 
         <para>
-            There are other ways to assert that the current database state equals an expected
-            state.  The "Bugs" table in the example already nows a lot about its inner state, so
-            why not use this to our advantage? The next example will assert that deleting from
-            the database is possible:
+            Es gibt andere Wege um anzunehmen das der aktuelle Datenbank Status mit dem erwarteten
+            Status gleich ist. Die Tabelle "Bugs" im Beispiel weiss bereits eine Menge über Ihren
+            internen Status, warum dass also nicht zu unserem Vorteil nutzen? Das nächste Beispiel
+            nimmt an dass das Löschen von der Datenbank möglich ist:
         </para>
 
         <programlisting language="php"><![CDATA[
@@ -250,25 +257,26 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 
         <para>
-            We have created a <classname>Zend_Test_PHPUnit_Db_DataSet_DbTableDataSet</classname>
-            dataset here, which takes any <classname>Zend_Db_Table_Abstract</classname> instance
-            and adds it to the dataset with its table name, in this example "zfbugs". You could
-            add several tables more if you wanted using the method
-            <methodname>addTable()</methodname> if you want to check for expected database state
-            in more than one table.
+            Wir haben hier ein Datenset
+            <classname>Zend_Test_PHPUnit_Db_DataSet_DbTableDataSet</classname> erstellt, welches
+            irgendweine Instanz von <classname>Zend_Db_Table_Abstract</classname> nimmt, und diese
+            im Datenset mit Ihrem Tabellennamen hinzufügt, in diesem Beispiel "zfbugs".  Man könnte
+            mehrere Tabellen hinzufügen, indem die Methode <methodname>addTable()</methodname>
+            verwendet wird, wenn man auf erwartete Datenbank Stati in mehr als einer Tabelle prüfen
+            will.
         </para>
 
         <para>
-            Here we only have one table and check against an expected database state in
-            "bugsDeleteAssertion.xml" which is the original seed dataset without the row with id
-            4.
+            Hier haben wir nur eine Tabelle und prüfen auf den erwarteten Datenbank Status in
+            "bugsDeleteAssertion.xml", welcher der originale Seed Datensatz ohne die Zeile mit der
+            Id 4 ist.
         </para>
 
         <para>
-            Since we have only checked that two specific tables (not datasets) are equal in the
-            previous examples we should also look at how to assert that two tables are equal.
-            Therefore we will add another test to our TestCase which verifies updating behaviour
-            of a dataset.
+            Da wir im vorhergehenden Beispiel nur geprüft haben ob die zwei spezifischen Tabellen
+            (nicht Datensätze) identisch sind, sollten wir uns auch anschauen wie man annehmen kann
+            dass zwei Tabellen identisch sind. Hierfür fügen wir einen weiteren Test in unseren
+            TestCase hinzu, der das Verhalten beim Aktualisieren eines Datensets prüft.
         </para>
 
         <programlisting language="php"><![CDATA[
@@ -303,12 +311,12 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 
         <para>
-            Here we create the current database state from a
-            <classname>Zend_Db_Table_Rowset_Abstract</classname> instance in conjunction with
-            the <methodname>Zend_Test_PHPUnit_Db_DataSet_DbRowset($rowset)</methodname> instance
-            which creates an internal data-representation of the rowset.  This can again be
-            compared against another data-table by using the
-            <methodname>$this->assertTablesEqual()</methodname> assertion.
+            Hier haben wir den aktuellen Datenbank Status aus der Instanz eines
+            <classname>Zend_Db_Table_Rowset_Abstract</classname>, in Verbindung mit der
+            Instanz von <methodname>Zend_Test_PHPUnit_Db_DataSet_DbRowset($rowset)</methodname>
+            erstellt, welche eine interne Daten-Repräsentation des Datensatzes erstellt. Das kann
+            wiederum gegenüber anderen Daten-Tabellen verglichen werden indem die Annahme
+            <methodname>$this->assertTablesEqual()</methodname> verwendet wird.
         </para>
     </sect3>
 </sect2>

+ 146 - 129
documentation/manual/de/ref/project-structure.xml

@@ -2,40 +2,42 @@
 <!-- EN-Revision: 18056 -->
 <!-- Reviewed: no -->
 <appendix id="project-structure">
-    <title>Recommended Project Structure for Zend Framework MVC Applications</title>
+    <title>Vorgeschlagene Struktur für die Projekt Struktur von Zend Framework MVC Anwendungen</title>
 
     <sect1 id="project-structure.overview">
-        <title>Overview</title>
+        <title>Übersicht</title>
 
         <para>
-            Many developers seek guidance on the best project structure for a Zend Framework project
-            in a relatively flexible environment. A "flexible" environment is one in which the
-            developer can manipulate their file systems and web server configurations as needed to
-            achieve the most ideal project structure to run and secure their application. The
-            default project structure will assume that the developer has such flexibility at their
-            disposal.
+            Viele Entwickler suchen Hilfe für die beste Projekt Struktur für ein Zend Framework
+            Projekt in einer relativ flexiblen Umgebung. Eine "flexible" Umgebung ist eine, in
+            welcher der Entwickler seine Dateisysteme und Konfigurationen des Webservers wie
+            benötigt manipulieren kann um die idealste Projektstruktur zu erhalten damit Ihre
+            Anweungen ausgeführt werden können und sicher sind. Die standardmäßige Projektstruktur
+            stellt sicher das der Entwickler diese Flexibilität zu seiner Verfügung hat.
         </para>
 
         <para>
-            The following directory structure is designed to be maximally extensible for complex
-            projects, while providing a simple subset of folder and files for project with simpler
-            requirements. This structure also works without alteration for both modular and
-            non-modular Zend Framework applications. The <filename>.htaccess</filename> files
-            require <acronym>URL</acronym> rewrite functionality in the web server as described in
-            the <link linkend="project-structure.rewrite">Rewrite Configuration Guide</link>, also
-            included in this appendix.
+            Die folgende Verzeichnisstruktur wurde designt um für komplexe Projekt maximal
+            erweiterbar zu sein, wärend Sie ein einfaches Subset von Verzeichnissen und Dateien
+            für Projekte mit einfacheren Notwendigkeiten anbietet. Diese Struktur arbeitet auch
+            ohne Änderung sowohl für modulare und nicht-modulare Zend Framework Anwendungen. Die
+            <filename>.htaccess</filename> Dateien benötigen <acronym>URL</acronym> Rewrite
+            Funktionalität im Web Server wie im
+            <link linkend="project-structure.rewrite">Rewrite Konfigurations Guide</link>
+            beschrieben, der auch in diesem Anhang enthalten ist.
         </para>
 
         <para>
-            It is not the intention that this project structure will support all possible Zend
-            Framework project requirements. The default project profile used by
-            <classname>Zend_Tool</classname> reflect this project structure, but applications with
-            requirements not supported by this structure should use a custom project profile.
+            Es ist nicht angedacht das diese Projekt Struktur alle möglichen Notwendigkeiten für
+            Zend Framework Projekte unterstützt. Das standardmäßige Projekt Profil welches von
+            <classname>Zend_Tool</classname> verwendet wird, reflektiert diese Projekt Struktur.
+            Aber Anwendungen mit Notwendigkeiten die nicht von dieser Struktur unterstützt werden,
+            sollten ein eigenes Projekt Profil verwenden.
         </para>
     </sect1>
 
     <sect1 id="project-structure.project">
-        <title>Recommended Project Directory Structure</title>
+        <title>Vorgeschlagene Verzeichnis Struktur für Projekte</title>
 
         <programlisting language="txt"><![CDATA[
 <project name>/
@@ -80,85 +82,88 @@
 ]]></programlisting>
 
         <para>
-            The following describes the use cases for each directory as listed.
+            Nachfolgend ist der Verwendungszweck für jedes Verzeichnis angeführt.
         </para>
 
         <itemizedlist>
             <listitem>
                 <para>
-                    <emphasis><filename>application/</filename></emphasis>: This directory contains
-                    your application. It will house the <acronym>MVC</acronym> system, as well as
-                    configurations, services used, and your bootstrap file.
+                    <emphasis><filename>application/</filename></emphasis>: Der Verzeichnis enthält
+                    die eigene Anwendung. Das wird das <acronym>MVC</acronym> System inkludieren,
+                    sowie Konfigurationen, verwendete Services, und die eigene Bootstrap Datei.
                 </para>
 
                 <itemizedlist>
                     <listitem>
                         <para>
-                            <emphasis><filename>configs/</filename></emphasis>: The
-                            application-wide configuration directory.
+                            <emphasis><filename>configs/</filename></emphasis>: Das Anwendungsweite
+                            Konfigurations Verzeichnis.
                         </para>
                     </listitem>
 
                     <listitem>
                         <para>
                             <emphasis><filename>controllers/</filename></emphasis>,
-                            <emphasis><filename>models/</filename></emphasis>, and
-                            <emphasis><filename>views/</filename></emphasis>: These directories
-                            serve as the default controller, model or view directories. Having
-                            these three directories inside the application directory provides the
-                            best layout for starting a simple project as well as starting a modular
-                            project that has global <filename>controllers/models/views</filename>.
+                            <emphasis><filename>models/</filename></emphasis>, und
+                            <emphasis><filename>views/</filename></emphasis>: Diese Verzeichnisse
+                            fungieren als Standardcontroller, Modell oder View Verzeichnisse.
+                            Diese drei Verzeichnisse im Anwendungsverzeichnis zu haben bietet das
+                            beste Layout für das Starten eines einfachen Projekts sowie als Start
+                            eines modularen Projekts das globale
+                            <filename>controllers/models/views</filename> hat.
                         </para>
                     </listitem>
 
                     <listitem>
                         <para>
-                            <emphasis><filename>controllers/helpers/</filename></emphasis>: These
-                            directories will contain action helpers. Action helpers will be
-                            namespaced either as "<classname>Controller_Helper_</classname>" for
-                            the default module or "&lt;Module&gt;_Controller_Helper" in other
-                            modules.
+                            <emphasis><filename>controllers/helpers/</filename></emphasis>: Diese
+                            Verzeichnisse enthalten Action Helfer. Action Helfer haben entweder
+                            einen Namespace von "<classname>Controller_Helper_</classname>" im
+                            Standardmodul oder "&lt;Module&gt;_Controller_Helper" in anderen
+                            Modulen.
                         </para>
                     </listitem>
 
                     <listitem>
                         <para>
-                            <emphasis><filename>layouts/</filename></emphasis>: This layout
-                            directory is for <acronym>MCV</acronym>-based layouts. Since
-                            <classname>Zend_Layout</classname> is capable of
-                            <acronym>MVC</acronym>- and non-<acronym>MVC</acronym>-based layouts,
-                            the location of this directory reflects that layouts are not on a
-                            1-to-1 relationship with controllers and are independent of templates
-                            within <filename>views/</filename>.
+                            <emphasis><filename>layouts/</filename></emphasis>: Dieses Layout
+                            Verzeichnis ist für <acronym>MCV</acronym>-basierte Layouts. Da
+                            <classname>Zend_Layout</classname> ist der Lage ist
+                            <acronym>MVC</acronym>- und nicht-<acronym>MVC</acronym>-basierte
+                            Layouts zu verstehen, zeigt der Ort dieses Verzeichnisses das Layouts
+                            keine 1-zu-1 beziehung zu Controllern haben und unabhängig von
+                            Templates in <filename>views/</filename> sind.
                         </para>
                     </listitem>
 
                     <listitem>
                         <para>
-                            <emphasis><filename>modules/</filename></emphasis>: Modules allow a
-                            developer to group a set of related controllers into a logically
-                            organized group. The structure under the modules directory would
-                            resemble the structure under the application directory.
+                            <emphasis><filename>modules/</filename></emphasis>: Module erlauben
+                            einem Entwickler ein Set von zusammengehörenden Controllern in eine
+                            logisch organisierte Gruppe zu gruppieren. Die Struktur im Modules
+                            Verzeichnis würde die Struktur des Application Verzeichnisses haben.
                         </para>
                     </listitem>
 
                     <listitem>
                         <para>
-                            <emphasis><filename>services/</filename></emphasis>: This directory is
-                            for your application specific web-service files that are provided by
-                            your application, or for implementing a <ulink
+                            <emphasis><filename>services/</filename></emphasis>: Dieses Verzeichnis
+                            ist für eigene Anwendungsspezifische Web-Service Dateien welche von der
+                            eigenen Anwendung angeboten werden, oder für die Implementierung eines
+                            <ulink
                                 url="http://www.martinfowler.com/eaaCatalog/serviceLayer.html">Service
-                                Layer</ulink> for your models.
+                                Layers</ulink> für eigene Modelle.
                         </para>
                     </listitem>
 
                     <listitem>
                         <para>
-                            <emphasis><filename>Bootstrap.php</filename></emphasis>: This file is
-                            the entry point for your application, and should implement
-                            <classname>Zend_Application_Bootstrap_Bootstrapper</classname>.
-                            The purpose for this file is to bootstrap the application and make
-                            components available to the application by initializing them.
+                            <emphasis><filename>Bootstrap.php</filename></emphasis>: Diese Datei ist
+                            der Eistiegspunkt für die eigene Anwendung, und sollte
+                            <classname>Zend_Application_Bootstrap_Bootstrapper</classname>
+                            implementieren. Das Ziel diese Datei ist es die Anwendung zu starten und
+                            Komponenten der Anwendung zur Verfügung zu stellen indem diese
+                            initialisiert werden.
                         </para>
                     </listitem>
                 </itemizedlist>
@@ -166,51 +171,57 @@
 
             <listitem>
                 <para>
-                    <emphasis><filename>data/</filename></emphasis>: This directory provides a
-                    place to store application data that is volatile and possibly temporary. The
-                    disturbance of data in this directory might cause the application to fail.
-                    Also, the information in this directory may or may not be committed to a
-                    subversion repository. Examples of things in this directory are session files,
-                    cache files, sqlite databases, logs and indexes.
+                    <emphasis><filename>data/</filename></emphasis>: Dieses Verzeichnis bietet einen
+                    Ort an dem Anwendungsdaten gespeichert werden die angreifbar und möglicherweise
+                    temporär sind. Die Veränderung von Daten in diesem Verzeichnis kann dazu führen
+                    das die Anwendung fehlschlägt. Die Informationen in diesem Verzeichnis können,
+                    oder auch nicht, in ein Subversion Repository übertragen werden. Beispiele von
+                    Dingen in diesem Verzeichnis sind Session Dateien, Cache Dateien, SQLite
+                    Datenbanken, Logs und Indezes.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <emphasis><filename>docs/</filename></emphasis>: This directory contains
-                    documentation, either generated or directly authored.
+                    <emphasis><filename>docs/</filename></emphasis>: Dieses Verzeichnis enthält die
+                    Dokumentation, entweder erzeugt oder direkt bearbeitet
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <emphasis><filename>library/</filename></emphasis>: This directory is for
-                    common libraries on which the application depends, and should be on the
-                    <acronym>PHP</acronym> <property>include_path</property>. Developers should
-                    place their application's library code under this directory in a unique
-                    namespace, following the guidelines established in the <acronym>PHP</acronym>
-                    manual's <ulink
-                        url="http://www.php.net/manual/en/userlandnaming.php">Userland Naming
-                        Guide</ulink>, as well as those established by Zend itself. This
-                    directory may also include Zend Framework itself; if so, you would house it in
-                    <filename>library/Zend/</filename>.
+                    <emphasis><filename>library/</filename></emphasis>: Dieses Verzeichnis ist für
+                    übliche Bibliotheken von denen die Anwendung abhängt, und es sollte im
+                    <property>include_path</property> von <acronym>PHP</acronym> sein. Entwickler
+                    sollten den Bibliotheks-Code Ihrer Anwendung in diesem Verzeichnis, unter einem
+                    eindeutigen Namespace platzieren, und den Richtlinien folgen die im Handbuch von
+                    <acronym>PHP</acronym> unter <ulink
+                        url="http://www.php.net/manual/de/userlandnaming.php">Userland Naming
+                        Guide</ulink> beschrieben sind, sowie denen die von Zend selbst beschrieben
+                    sind.; Dieses Verzeichnis kann auch den Zend Framework selbst enthalten; wenn
+                    dem so ist, würde er unter <filename>library/Zend/</filename> platziert werden.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <emphasis><filename>public/</filename></emphasis>: This directory contains all
-                    public files for your application. <filename>index.php</filename> sets up and
-                    invokes <classname>Zend_Application</classname>, which in turn invokes the
-                    <filename>application/Bootstrap.php</filename> file, resulting in dispatching
-                    the front controller. The web root of your web server would typically be set to
-                    this directory.
+                    <emphasis><filename>public/</filename></emphasis>: Dieses Verzeichnis enthält
+                    alle öffentlichen Dateien für die eigene Anwendung.
+                    <filename>index.php</filename> konfiguriert und startet
+                    <classname>Zend_Application</classname>, welche seinerseits die Datei
+                    <filename>application/Bootstrap.php</filename> startet, was dazu führt das der
+                    Front Controller ausgeführt wird. Der Web Root des Web Server sollte
+                    typischerweise auf dieses Verzeichnis gesetzt sein.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <emphasis><filename>scripts/</filename></emphasis>: This directory contains
+                    <emphasis><filename>scripts/</filename></emphasis>: Dieses Verzeichnis enthält
+                    Maintenance und/oder Build Skripte. Solche Skripte können Commandline, Cron oder
+                    Phing Build Skripte enthalten die nicht wärend der Laufzeit ausgeführt werden,
+                    aber Teil für das korrekte Funktionieren der Anwendung sind.
+                    This directory contains
                     maintenance and/or build scripts. Such scripts might include command line,
                     cron, or phing build scripts that are not executed at runtime but are part of
                     the correct functioning of the application.
@@ -219,36 +230,38 @@
 
             <listitem>
                 <para>
-                    <emphasis><filename>temp/</filename></emphasis>: The <filename>temp/</filename>
-                    folder is set aside for transient application data. This information would not
-                    typically be committed to the applications svn repository. If data under the
-                    <filename>temp/</filename> directory were deleted, the application should be
-                    able to continue running with a possible decrease in performance until data is
-                    once again restored or recached.
+                    <emphasis><filename>temp/</filename></emphasis>: Das <filename>temp/</filename>
+                    Verzeichnis wird für vergängliche Anwendungsdaten gesetzt. Diese Information
+                    würde typischerweise nicht im SVN Repository der Anwendung gespeichert werden.
+                    Wenn Daten im <filename>temp/</filename> Verzeichnis gelöscht werden, sollten
+                    Anwendungsen dazu in der Lage sein weiterhin zu laufen wärend das möglicherweise
+                    die Geschwindigkeit reduziert bis die Daten wieder gespeichert oder neu
+                    gecacht sind.
                 </para>
             </listitem>
 
             <listitem>
                 <para>
-                    <emphasis><filename>tests/</filename></emphasis>: This directory contains
-                    application tests. These could be hand-written, PHPUnit tests, Selenium-RC
-                    based tests or based on some other testing framework. By default, library code
-                    can be tested by mimicing the directory structure of your
-                    <filename>library/</filename> directory. Additionally, functional tests for
-                    your application could be written mimicing the
-                    <filename>application/</filename> directory structure (including the
-                    application subdirectory).
+                    <emphasis><filename>tests/</filename></emphasis>: Dieses Verzeichnis enthält
+                    Anwendungstests. Diese würden hand-geschrieben sein, PHPUnit Tests, Selenium-RC
+                    basierte Tests oder basierend auf anderen Test Frameworks. Standardmäßig kann
+                    Library Code getestet werden indem die Verzeichnis Struktur des
+                    <filename>library/</filename> Verzeichnisses vorgegauckelt wird. Zusätzliche
+                    funktionale Tests für die eigene Anwendung können geschrieben werden indem die
+                    Verzeichnis Struktur von <filename>application/</filename> vorgegauckelt wird
+                    (inklusive der Unterverzeichnisse der Anwendung).
                 </para>
             </listitem>
         </itemizedlist>
     </sect1>
 
     <sect1 id="project-structure.filesystem">
-        <title>Module Structure</title>
+        <title>Modul Struktur</title>
 
         <para>
-            The directory structure for modules should mimic that of the
-            <filename>application/</filename> directory in the recommended project structure:
+            Die Verzeichnis Struktur für Module sollte jene des
+            <filename>application/</filename> Verzeichnisses in der vorgeschlagenen Projekt Struktur
+            entsprechen:
         </para>
 
         <programlisting language="xml"><![CDATA[
@@ -272,40 +285,42 @@
 ]]></programlisting>
 
         <para>
-            The purpose of these directories remains exactly the same as for the recommended
-            project directory structure.
+            Der Zweck dieses Verzeichnisse bleibt exakt der gleiche wie der für die vorgeschlagene
+            Verzeichnis Struktur des Projekts.
         </para>
     </sect1>
 
     <sect1 id="project-structure.rewrite">
-        <title>Rewrite Configuration Guide</title>
+        <title>Leitfaden für die Rewrite Konfiguration</title>
 
         <para>
-            <acronym>URL</acronym> rewriting is a common function of <acronym>HTTP</acronym>
-            servers. However, the rules and configuration differ widely between them. Below are
-            some common approaches across a variety of popular web servers available at the time of
-            writing.
+            <acronym>URL</acronym> Rewriting ist eine der üblichen Funktionen von
+            <acronym>HTTP</acronym> Servern. Trotzdem unterscheiden sich die Regeln und die
+            Konfiguration zwischen Ihnen sehr stark. Anbei sind einige der üblichen Vorschläge
+            für eine Vielzahl der populären Webserver zu finden, die zur der Zeit in der das hier
+            geschrieben wurde, vorhanden sind.
         </para>
 
         <sect2 id="project-structure.rewrite.apache">
             <title>Apache HTTP Server</title>
 
             <para>
-                All examples that follow use <property>mod_rewrite</property>, an official
-                module that comes bundled with Apache. To use it,
-                <property>mod_rewrite</property> must either be included at compile time or
-                enabled as a Dynamic Shared Object (<acronym>DSO</acronym>). Please consult the
-                <ulink url="http://httpd.apache.org/docs/">Apache documentation</ulink> for your
-                version for more information.
+                Alle folgenden Beispiel verwenden <property>mod_rewrite</property>, ein offizielles
+                Modul das bebündelt mit Apache kommt. Um es zu verwenden muss
+                <property>mod_rewrite</property> entweder wärend der Zeit des Kompilierens enthalten
+                sein, oder als Dynamic Shared Objekt (<acronym>DSO</acronym>) aktiviert werden.
+                Konsultieren Sie bitte die
+                <ulink url="http://httpd.apache.org/docs/">Apache Dokumentation</ulink> für weitere
+                Informationen über Ihre Version.
             </para>
 
             <sect3 id="project-structure.rewrite.apache.vhost">
-                <title>Rewriting inside a VirtualHost</title>
+                <title>Rewriting innerhalb eines VirtualHost</title>
 
                 <para>
-                    Here is a very basic virtual host definition. These rules direct all requests
-                    to <filename>index.php</filename>, except when a matching file is found under
-                    the <property>document_root</property>.
+                    Hier ist eine sehr grundsätzliche Definition eines virtuellen Hosts. Diese
+                    Regeln leiten alle Anfragen auf <filename>index.php</filename> weiter, ausser
+                    wenn eine passende Datei im <property>document_root</property> gefunden wurde.
                 </para>
 
                 <programlisting language="xml"><![CDATA[
@@ -327,19 +342,20 @@
 ]]></programlisting>
 
                 <para>
-                    Note the slash ("/") prefixing <filename>index.php</filename>; the rules for
-                    <filename>.htaccess</filename> differ in this regard.
+                    Es ist der Schrägstrich ("/") zu beachten der <filename>index.php</filename>
+                    vorangestellt ist; die Regeln für <filename>.htaccess</filename> unterscheiden
+                    sich in diesem Punkt.
                 </para>
             </sect3>
 
             <sect3 id="project-structure.rewrite.apache.htaccess">
-                <title>Rewriting within a .htaccess file</title>
+                <title>Rewriting innerhalb einer .htaccess Datei</title>
 
                 <para>
-                    Below is a sample <filename>.htaccess</filename> file that utilizes
-                    <property>mod_rewrite</property>. It is similar to the virtual host
-                    configuration, except that it specifies only the rewrite rules, and the leading
-                    slash is omitted from <filename>index.php</filename>.
+                    Anbei ist eine einfache <filename>.htaccess</filename> Datei welche
+                    <property>mod_rewrite</property> verwendet. Das ist Ähnlich der Konfiguration
+                    für virtuelle Hosts, ausser das Sie nur die Rewrite Regeln spezifiziert, und der
+                    führende Schrägstrich bei <filename>index.php</filename> nicht angegeben wird.
                 </para>
 
                 <programlisting language="text"><![CDATA[
@@ -352,10 +368,10 @@ RewriteRule ^.*$ index.php [NC,L]
 ]]></programlisting>
 
                 <para>
-                    There are many ways to configure <property>mod_rewrite</property>; if you
-                    would like more information, see Jayson Minard's <ulink
-                        url="http://devzone.zend.com/a/70">Blueprint for PHP Applications:
-                    Bootstrapping</ulink>.
+                    Es gibt viele Wege um <property>mod_rewrite</property> zu konfigurieren; wenn
+                    man weitere Informationen haben will, dann sollte man in Jayson Minard's
+                    <ulink url="http://devzone.zend.com/a/70">Blueprint for PHP Applications:
+                    Bootstrapping</ulink> sehen.
                 </para>
             </sect3>
 
@@ -365,8 +381,9 @@ RewriteRule ^.*$ index.php [NC,L]
             <title>Microsoft Internet Information Server</title>
 
             <para>
-                As of version 7.0, <acronym>IIS</acronym> now ships with a standard rewrite engine.
-                You may use the following configuration to create the appropriate rewrite rules.
+                Ab Version 7.0 wird <acronym>IIS</acronym> jetzt mit einer Standardmäßigen Rewrite
+                Engine ausgeliefert. Man kann die folgende Konfiguration verwenden um die
+                entsprechenden Rewrite Regeln zu erstellen.
             </para>
 
             <programlisting language="xml"><![CDATA[