2
0
Просмотр исходного кода

[DOCUMENTATION] German:

- some translation

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@18422 44c647ce-9c0f-0410-b52a-842ac1e357ba
thomas 16 лет назад
Родитель
Сommit
737fce37f9

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

@@ -5,25 +5,27 @@
     <title>Quickstart</title>
     <title>Quickstart</title>
 
 
     <sect3 id="zend.test.phpunit.db.quickstart.testcase">
     <sect3 id="zend.test.phpunit.db.quickstart.testcase">
-        <title>Setup a Database TestCase</title>
+        <title>Einen Datenbank TestCase erstellen</title>
 
 
         <para>
         <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>
         </para>
 
 
         <note>
         <note>
             <para>
             <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>
             </para>
         </note>
         </note>
 
 
@@ -62,55 +64,58 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 ]]></programlisting>
 
 
         <para>
         <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>
         </para>
 
 
         <itemizedlist>
         <itemizedlist>
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
             </listitem>
             </listitem>
 
 
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
             </listitem>
             </listitem>
 
 
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
             </listitem>
             </listitem>
 
 
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
             </listitem>
             </listitem>
         </itemizedlist>
         </itemizedlist>
     </sect3>
     </sect3>
 
 
     <sect3 id="zend.test.phpunit.db.quickstart.dataset">
     <sect3 id="zend.test.phpunit.db.quickstart.dataset">
-        <title>Specify a seed dataset</title>
+        <title>Einen Seed Datensatz spezifizieren</title>
 
 
         <para>
         <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>
         </para>
 
 
         <programlisting language="xml"><![CDATA[
         <programlisting language="xml"><![CDATA[
@@ -134,8 +139,8 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 ]]></programlisting>
 
 
         <para>
         <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>
         </para>
 
 
         <programlisting language="sql"><![CDATA[
         <programlisting language="sql"><![CDATA[
@@ -154,13 +159,14 @@ PRIMARY KEY  (`bug_id`)
     </sect3>
     </sect3>
 
 
     <sect3 id="zend.test.phpunit.db.quickstart.initial-tests">
     <sect3 id="zend.test.phpunit.db.quickstart.initial-tests">
-        <title>A few initial database tests</title>
+        <title>Einige initiale Datenbank Tests</title>
 
 
         <para>
         <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>
         </para>
 
 
         <programlisting language="php"><![CDATA[
         <programlisting language="php"><![CDATA[
@@ -197,16 +203,17 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 ]]></programlisting>
 
 
         <para>
         <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>
         </para>
 
 
         <programlisting language="xml"><![CDATA[
         <programlisting language="xml"><![CDATA[
@@ -220,10 +227,10 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 ]]></programlisting>
 
 
         <para>
         <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>
         </para>
 
 
         <programlisting language="php"><![CDATA[
         <programlisting language="php"><![CDATA[
@@ -250,25 +257,26 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 ]]></programlisting>
 
 
         <para>
         <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>
 
 
         <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>
 
 
         <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>
         </para>
 
 
         <programlisting language="php"><![CDATA[
         <programlisting language="php"><![CDATA[
@@ -303,12 +311,12 @@ class BugsTest extends Zend_Test_PHPUnit_DatabaseTestCase
 ]]></programlisting>
 ]]></programlisting>
 
 
         <para>
         <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>
         </para>
     </sect3>
     </sect3>
 </sect2>
 </sect2>

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

@@ -2,40 +2,42 @@
 <!-- EN-Revision: 18056 -->
 <!-- EN-Revision: 18056 -->
 <!-- Reviewed: no -->
 <!-- Reviewed: no -->
 <appendix id="project-structure">
 <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">
     <sect1 id="project-structure.overview">
-        <title>Overview</title>
+        <title>Übersicht</title>
 
 
         <para>
         <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>
 
 
         <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>
 
 
         <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>
         </para>
     </sect1>
     </sect1>
 
 
     <sect1 id="project-structure.project">
     <sect1 id="project-structure.project">
-        <title>Recommended Project Directory Structure</title>
+        <title>Vorgeschlagene Verzeichnis Struktur für Projekte</title>
 
 
         <programlisting language="txt"><![CDATA[
         <programlisting language="txt"><![CDATA[
 <project name>/
 <project name>/
@@ -80,85 +82,88 @@
 ]]></programlisting>
 ]]></programlisting>
 
 
         <para>
         <para>
-            The following describes the use cases for each directory as listed.
+            Nachfolgend ist der Verwendungszweck für jedes Verzeichnis angeführt.
         </para>
         </para>
 
 
         <itemizedlist>
         <itemizedlist>
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
 
 
                 <itemizedlist>
                 <itemizedlist>
                     <listitem>
                     <listitem>
                         <para>
                         <para>
-                            <emphasis><filename>configs/</filename></emphasis>: The
-                            application-wide configuration directory.
+                            <emphasis><filename>configs/</filename></emphasis>: Das Anwendungsweite
+                            Konfigurations Verzeichnis.
                         </para>
                         </para>
                     </listitem>
                     </listitem>
 
 
                     <listitem>
                     <listitem>
                         <para>
                         <para>
                             <emphasis><filename>controllers/</filename></emphasis>,
                             <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>
                         </para>
                     </listitem>
                     </listitem>
 
 
                     <listitem>
                     <listitem>
                         <para>
                         <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>
                         </para>
                     </listitem>
                     </listitem>
 
 
                     <listitem>
                     <listitem>
                         <para>
                         <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>
                         </para>
                     </listitem>
                     </listitem>
 
 
                     <listitem>
                     <listitem>
                         <para>
                         <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>
                         </para>
                     </listitem>
                     </listitem>
 
 
                     <listitem>
                     <listitem>
                         <para>
                         <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
                                 url="http://www.martinfowler.com/eaaCatalog/serviceLayer.html">Service
-                                Layer</ulink> for your models.
+                                Layers</ulink> für eigene Modelle.
                         </para>
                         </para>
                     </listitem>
                     </listitem>
 
 
                     <listitem>
                     <listitem>
                         <para>
                         <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>
                         </para>
                     </listitem>
                     </listitem>
                 </itemizedlist>
                 </itemizedlist>
@@ -166,51 +171,57 @@
 
 
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
             </listitem>
             </listitem>
 
 
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
             </listitem>
             </listitem>
 
 
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
             </listitem>
             </listitem>
 
 
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
             </listitem>
             </listitem>
 
 
             <listitem>
             <listitem>
                 <para>
                 <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,
                     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
                     cron, or phing build scripts that are not executed at runtime but are part of
                     the correct functioning of the application.
                     the correct functioning of the application.
@@ -219,36 +230,38 @@
 
 
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
             </listitem>
             </listitem>
 
 
             <listitem>
             <listitem>
                 <para>
                 <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>
                 </para>
             </listitem>
             </listitem>
         </itemizedlist>
         </itemizedlist>
     </sect1>
     </sect1>
 
 
     <sect1 id="project-structure.filesystem">
     <sect1 id="project-structure.filesystem">
-        <title>Module Structure</title>
+        <title>Modul Struktur</title>
 
 
         <para>
         <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>
         </para>
 
 
         <programlisting language="xml"><![CDATA[
         <programlisting language="xml"><![CDATA[
@@ -272,40 +285,42 @@
 ]]></programlisting>
 ]]></programlisting>
 
 
         <para>
         <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>
         </para>
     </sect1>
     </sect1>
 
 
     <sect1 id="project-structure.rewrite">
     <sect1 id="project-structure.rewrite">
-        <title>Rewrite Configuration Guide</title>
+        <title>Leitfaden für die Rewrite Konfiguration</title>
 
 
         <para>
         <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>
         </para>
 
 
         <sect2 id="project-structure.rewrite.apache">
         <sect2 id="project-structure.rewrite.apache">
             <title>Apache HTTP Server</title>
             <title>Apache HTTP Server</title>
 
 
             <para>
             <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>
             </para>
 
 
             <sect3 id="project-structure.rewrite.apache.vhost">
             <sect3 id="project-structure.rewrite.apache.vhost">
-                <title>Rewriting inside a VirtualHost</title>
+                <title>Rewriting innerhalb eines VirtualHost</title>
 
 
                 <para>
                 <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>
                 </para>
 
 
                 <programlisting language="xml"><![CDATA[
                 <programlisting language="xml"><![CDATA[
@@ -327,19 +342,20 @@
 ]]></programlisting>
 ]]></programlisting>
 
 
                 <para>
                 <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>
                 </para>
             </sect3>
             </sect3>
 
 
             <sect3 id="project-structure.rewrite.apache.htaccess">
             <sect3 id="project-structure.rewrite.apache.htaccess">
-                <title>Rewriting within a .htaccess file</title>
+                <title>Rewriting innerhalb einer .htaccess Datei</title>
 
 
                 <para>
                 <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>
                 </para>
 
 
                 <programlisting language="text"><![CDATA[
                 <programlisting language="text"><![CDATA[
@@ -352,10 +368,10 @@ RewriteRule ^.*$ index.php [NC,L]
 ]]></programlisting>
 ]]></programlisting>
 
 
                 <para>
                 <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>
                 </para>
             </sect3>
             </sect3>
 
 
@@ -365,8 +381,9 @@ RewriteRule ^.*$ index.php [NC,L]
             <title>Microsoft Internet Information Server</title>
             <title>Microsoft Internet Information Server</title>
 
 
             <para>
             <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>
             </para>
 
 
             <programlisting language="xml"><![CDATA[
             <programlisting language="xml"><![CDATA[