<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Johannes Gamperl &#187; Zend Studio</title>
	<atom:link href="http://jg-webdesign.de/category/zend/zend-studio/feed/" rel="self" type="application/rss+xml" />
	<link>http://jg-webdesign.de</link>
	<description>Programmierer / freier Journalist / Buchautor - Ihr professioneller Dienstleister seit 1995</description>
	<lastBuildDate>Sun, 03 Jan 2010 14:31:13 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Zend Tool im Zend Studio 7</title>
		<link>http://jg-webdesign.de/zend/zend-tool-im-zend-studio-7/</link>
		<comments>http://jg-webdesign.de/zend/zend-tool-im-zend-studio-7/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 23:08:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Zend]]></category>
		<category><![CDATA[Zend Studio]]></category>

		<guid isPermaLink="false">http://jg-webdesign.de/?p=61</guid>
		<description><![CDATA[Die Pflege eines Projekts, welches mit Hilfe des Zend Framework erstellt wird, ist von Hand schon ziemlich lästig. Möchte man beispielsweise einen neuen Controller anlegen, muss man eine entsprechende PHP-Datei und eine Datei für den dazugehörigen View erzeugen. Noch umständlicher wird es, wenn man ein neues Modul anlegen muss, da hier diverse Verzeichnisse zu erzeugen [...]]]></description>
			<content:encoded><![CDATA[<p>Die Pflege eines Projekts, welches mit Hilfe des <a href="http://framework.zend.com">Zend Framework</a> erstellt wird, ist von Hand schon ziemlich lästig. Möchte man beispielsweise einen neuen Controller anlegen, muss man eine entsprechende PHP-Datei und eine Datei für den dazugehörigen View erzeugen. Noch umständlicher wird es, wenn man ein neues Modul anlegen muss, da hier diverse Verzeichnisse zu erzeugen sind. Alles lästige Aufgaben im Filesystem.</p>
<p>Das Zend Studio hilft diese Aufgabe etwas bequemer zu erledigen. Seit der Version 1.8 des Zend Frameworks gibt es das <a href="http://framework.zend.com/manual/de/zend.tool.project.html">Projekt &#8220;Zend Tool&#8221;</a> mit desse Hilfe man über die Kommandozeile ein entsprechendes Projekt verwalten kann. In Verbindung mit dem Zend Server wird diese Option zudem automatisch mit installiert, ohne das ein manuelle Konfiguration nötig ist.<br />
<span id="more-61"></span><br />
Was vielleicht nicht jeder weiß ist, dass man mit dem <a href="http://www.zend.com/de/products/studio/">Zend Studio 7</a> das &#8220;Zend Tool&#8221; über das Menü &#8220;<code>Project → Zend Tool</code>&#8221; direkt aufrufen kann. Noch einfacher über die Tastenkombination &#8220;<code>CTRL+2</code>&#8220;, worauf sich das folgende Fenster öffnet.</p>
<p><div id="attachment_63" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-63" title="zend-tool" src="http://jg-webdesign.de/wp-content/uploads/2009/10/zend-tool-300x213.png" alt="Integrierte Kommandozeile zum Zend Tool" width="300" height="213" /><p class="wp-caption-text">Integrierte Kommandozeile zum Zend Tool</p></div></p>
<p>Hier kann man nun mit entsprechenden Eingaben die gewünschten Aktionen ausführen. Für manche Optionen wird eine Hilfe mit kurzer Beschreibung eingeblendet. Zahlreiche Möglichkeiten sind bisher noch nicht dokumentiert oder funktionieren derzeit nicht. Im folgenden beschreibe ich einige der wichtigsten Befehle für das schnelle Arbeiten mit dem Zend Framework.</p>
<p><strong>zf create project PROJEKTNAME</strong></p>
<p>Mit diesem Befehl wird ein neues Projekt im aktuellen Arbeitsbereich erstellt. Dabei werden die Standardverzeichnisse und -dateien eines typischen Zend Framework Projekts anglegt:</p>
<pre><code>
├───application
│   │   Bootstrap.php
│   │
│   ├───configs
│   │       application.ini
│   │
│   ├───controllers
│   │       ErrorController.php
│   │       IndexController.php
│   │
│   ├───models
│   └───views
│       ├───helpers
│       └───scripts
│           ├───error
│           │       error.phtml
│           │
│           └───index
│                   index.phtml
│
├───library
├───public
│       .htaccess
│       index.php
│
└───tests
    │   phpunit.xml
    │
    ├───application
    │       bootstrap.php
    │
    └───library
            bootstrap.php
</code></pre>
<p>Das alles will man sicher nicht von Hand anlegen ;o) Für die weitere Arbeit müssen Sie in das aktuelle Projekt mit dem Befehl <code>cd PROJEKTNAME</code> wechseln. Dies wird mit der Meldung <code>context was set to /PROJEKTNAME</code> bestätigt.</p>
<p><strong>zf create controller CONTROLLERNAME</strong></p>
<p>Hiermit wird ein neuer Controller, die dazugehörige View sowie eine Test-Datei im aktuellen Projekt erzeugt. Ein Auszug aus der daraus resultierenden Verzeichnisstruktur soll dies verdeutlichen:</p>
<pre><code>
│   ├───controllers
│   │       <span style="color:#ff0000;">TestController.php</span>
│   └───views
│       └───scripts
│           ├───<span style="color:#ff0000;">test</span>
│           │       <span style="color:#ff0000;">test.phtml</span>
│
└───tests
    ├───application
    │   └───controllers
    │           <span style="color:#ff0000;">TestControllerTest.php</span>
</code></pre>
<p>Der neue Controller kann anschließend sofort ausgeführt werden, da eine leere Index-Action mit angelegt wird. Die entsprechende View wird per Default mit folgendem Inhalte gefüllt:</p>
<pre class="brush: xml; gutter: false;">
&lt;br /&gt;&lt;br /&gt;&lt;center&gt;View script for controller &lt;b&gt;Test&lt;/b&gt; and script/action name &lt;b&gt;index&lt;/b&gt;&lt;/center&gt;
</pre>
<p>Warum dazu das veraltete und in XHTML nicht mehr vorhandene <code>center</code>-Tag verwendet weiß ich nicht. Da hätte man dann auch gleich das <code>blink</code>-Tag wieder aufleben lassen können ;o)</p>
<p><strong>zf add action ACTIONNAME CONTROLLERNAME</strong></p>
<p>Dieser Befehl erzeugt eine neue Action im referenzierten Controller und legt zugleich ein entsprechendes Template im View-Ordner an. Der Inhalt des Controllers stellt sich anschließend wie folgt dar:</p>
<pre class="brush: php; gutter: false;">
&lt;?php

class TestController extends Zend_Controller_Action
{

    public function init()
    {
        /* Initialize action controller here */
    }

    public function indexAction()
    {
        // action body
    }

    public function ACTIONNAMEAction()
    {
        // action body
    }

}
</pre>
<p>Dieser Befehl muss für jede weitere Action erneut ausgeführt werden. Dabei fügt &#8220;Zend Tool&#8221; die entsprechende Method jeweils ans Ende im angegebenen Controller ein.</p>
<p><strong>zf create view ACTIONNAME VIEWNAME</strong></p>
<p>Mit dieser Angabe erstellen Sie ein View ohne zugleich einen Controller anzulegen.</p>
<p><strong>zf create module MODULLNAME</strong></p>
<p>Dieser Befehl erzeugt ein neues Modul im Verzeichnis <code>/modules</code> mit der folgenden Verzeichnisstruktur:</p>
<pre><code>
│   ├───modules
│   │   ├───Test
│   │   │   ├───controllers
│   │   │   ├───models
│   │   │   └───views
│   │   │       ├───filters
│   │   │       ├───helpers
│   │   │       └───scripts
</code></pre>
<p>Falls das Verzeichnis <code>/modules</code> bisher nicht vorhanden war, wird es beim ersten Aufruf des Befehls mit angelegt.</p>
<p><strong>Anmerkung</strong></p>
<p>Das waren aus meiner Sicht die wichtigsten und zugleich nützlichsten Befehle, welche in der aktuellen Version von &#8220;Zend Tool&#8221; angeboten werden. Die weitere Entwicklung zu diesem praktischen Werkzeug sollte man auf jeden Fall im Auge behalten.  Die Supportseite für das &#8220;Zend Tool&#8221;  findet man unter der URL <a href="http://framework.zend.com/issues/browse/ZF-6571">http://framework.zend.com/issues/browse/ZF-6571</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://jg-webdesign.de/zend/zend-tool-im-zend-studio-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arbeitsbereiche im Zend Studio</title>
		<link>http://jg-webdesign.de/zend/arbeitsbereiche-im-zend-studio/</link>
		<comments>http://jg-webdesign.de/zend/arbeitsbereiche-im-zend-studio/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 21:54:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Zend]]></category>
		<category><![CDATA[Zend Studio]]></category>

		<guid isPermaLink="false">http://jg-webdesign.de/?p=41</guid>
		<description><![CDATA[Bis zur Version 6.x des Zend Studios war ich nicht ganz so begeistert von dieser auf Eclipse basierenden IDE. Mir persönlich hatte das alte Zend Studio wesentlich besser gefallen. Mit der Version 7 in Verbindung mit dem Zend Server habe ich meine Meinung aber wieder geändert. Kurzum, ich bin aktuell rundum zufrieden. 
Ein Problem hatte [...]]]></description>
			<content:encoded><![CDATA[<p>Bis zur Version 6.x des <a href=“http://www.zend.com/de/products/studio/“>Zend Studios</a> war ich nicht ganz so begeistert von dieser auf Eclipse basierenden IDE. Mir persönlich hatte das alte Zend Studio wesentlich besser gefallen. Mit der Version 7 in Verbindung mit dem <a href=“http://www.zend.com/de/products/server/“>Zend Server</a> habe ich meine Meinung aber wieder geändert. Kurzum, ich bin aktuell rundum zufrieden. </p>
<p>Ein Problem hatte ich aber noch.<br />
<span id="more-41"></span> Da ich meine Projekte lokal unterschiedlich organisiere, fehlte mir noch die Möglichkeit, z.B. ein auf dem <a href=“http://framework.zend.com/“>Zend Framework</a> basierendes Projekt an einer bestimmte Stelle auf dem Dateisystem zu speichern. Zend Studio organisiert seine Projekte in sogenannte Arbeitsbereiche in einem bei der Installation vorgegebenen Verzeichnis. Möchte man nun sein eigenes Standardverzeichnis verwenden, kann dies mit der Option &#8220;Create project from existing source&#8221; auswählen werden. Dies hat jedoch den Nachteil, dass bei einem ZF Projekt die Grundstruktur nicht automatisch mit angelegt wird. </p>
<p><strong>Achtung: Falls man ein auf diese Art angelegtes Projekt in Zend Studio löscht, wird auch das übergeordnete Hautverzeichnis mit gelöscht!</strong></p>
<p>Eine auf den ersten Blick unscheinbare Option in den Einstellungen &#8220;<code>Window → Preferences</code>&#8221; des Zend Studios  ermöglicht es<br />
dem Anwender, beim Start einen neuen Arbeitsbereich anzugeben bzw. auszuwählen. Im Bereich &#8220;<code>General → Startup and Shutdown → Workspaces</code>&#8221; müssen Sie die Option &#8220;<code>Prompt for workspace on startup</code>&#8221; aktivieren. Die direkte Eingabe eines neuen Arbeitsbereiches ist in dieser Maske nicht möglich.</p>
<p><div id="attachment_43" class="wp-caption aligncenter" style="width: 310px"><img src="http://jg-webdesign.de/wp-content/uploads/2009/10/zend-workspace-1-300x264.png" alt="Zend Studio Workspace Einstellungen" title="zend-workspace-1" width="300" height="264" class="size-medium wp-image-43" /><p class="wp-caption-text">Zend Studio Workspace Einstellungen</p></div></p>
<p>Über &#8220;<code>File → Switch Workspace → ...</code>&#8221; kann man zwischen den Arbeitsbereichen umschalten. Dazu wird das Zend Studio neu geladen, da Eclipse intern über einen entsprechenden Parameter für den Arbeitsbereich gestartet wird.</p>
<p><div id="attachment_42" class="wp-caption aligncenter" style="width: 310px"><img src="http://jg-webdesign.de/wp-content/uploads/2009/10/zend-workspace-2-300x123.png" alt="Zend Studio Workspace wählen" title="zend-workspace-2" width="300" height="123" class="size-medium wp-image-42" /><p class="wp-caption-text">Zend Studio Workspace wählen</p></div></p>
<p>Arbeitsbereiche sind sehr praktisch, um Projekte in unterschiedlichen Ordnern zu organisieren. Alle Einstellungen der IDE werden für den jeweiligen Arbeitsbereich separat vorgenommen. Falls man für längere Zeit in einem bestimmten Arbeitsbereich arbeitet, kann man die Option &#8220;<code>Prompt for workspace on startup</code>&#8221; wieder deaktivieren oder die entsprechende Option im Startfenster aktiveren. </p>
]]></content:encoded>
			<wfw:commentRss>http://jg-webdesign.de/zend/arbeitsbereiche-im-zend-studio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
