Zend_Column 3.11
Kommentare

Es hat sich einiges getan beim Zend Framework. Wir präsentieren daher die Zend_Kolumn aus dem aktuellen PHP Magazin 3.11, die alle Hintergründe aufdeckt. Viel Spaß!

Zend Framework User Groups

Seit

Es hat sich einiges getan beim Zend Framework. Wir präsentieren daher die Zend_Kolumn aus dem aktuellen PHP Magazin 3.11, die alle Hintergründe aufdeckt. Viel Spaß!

Zend Framework User Groups

Seit kurzem gibt es auf der Zend-Framework-Website eine Rubrik, in der alle Zend Framework User Groups weltweit gelistet werden. Wer eine Zend Framework User Group kennt, die dort noch nicht gelistet ist, kann sie in der Liste eintragen lassen. Falls es Interessenten für eine Zend Framework User Group in Raum Hamburg gibt, bitte bei mir melden.

MVC Interface Proposal für 2.0

Matthew Weier O’Phinney hat ein ausführliches Proposal für die neuen Interfaces in den MVC-Komponenten vom Zend Framework 2 veröffentlicht. In diesem ersten Schritt geht es somit noch nicht um die Implementierung der MVC-Komponenten, sondern erst um die zugrunde liegende Basis in Form eines Satzes von Interfaces. Dieses Proposal wurde rege diskutiert und mittlerweile hat das Zend Framework Community Review Team dieses Proposal bereits abgesegnet und die Implementierung empfohlen. Zu Beginn werden verschiedene Probleme in der MVC-Implementierung vom Zend Framework 1 analysiert. Dazu zählen unter anderem:

  • das Fehlen eines Page Controllers (im Gegensatz zu einem Front Controller mit vielen Action Controllern)
  • das Fehlen eines Action Controller Interfaces (das vorhandene ist sehr rudimentär, zudem ist man gezwungen, die abstrakte Klasse Zend_Controller_Action zu erweitern)
  • der aktuelle Action Controller trägt zu viele Verantwortlichkeiten in sich (View-Verarbeitung, Redirects, Helper Broker, Parameterverarbeitung, Dispatching, …)
  • die Unterstützung von Services (AMF, JSON, XML-RPC, SOAP) ist verbesserungswürdig
  • der Standard-Dispatcher ist zu unflexibel und lässt sich nur schwer austauschen
  • es gibt zu viele Hook Points (Stellen, an denen ein Entwickler im Verarbeitungsprozess eigenen Code ausführen lassen kann); Hook Points bieten die Front Controller Plug-ins, die Action Helper und die Action Controller
  • derzeit wird nur eine View-Verarbeitungsstrategie angeboten, die Templates durch PHP parsen lässt
  • die Konfiguration und das Übergeben von Ressourcen ist unvollständig
  • die Performance hat sich seit dem Release 1.0 kaum verbessert und ist auf jeden Fall verbesserungswürdig
  • die Module werden unzureichend unterstützt

Auf Basis dieser Problematiken hat Matthew eine lange Liste an Anforderungen zusammengestellt, welche die genannten Punkte zu lösen versuchen. Diese Punkte beziehen sich auf sämtliche Aspekte und Teilbereiche in den MVC-Komponenten.

Als Nächstes folgt eine Liste mit allen vorgeschlagenen Interfaces, den Vorteilen, die sie mit sich bringen und weiteren Interfaces in diesem Zusammenhang. Ein Schwerpunkt liegt dabei auf Interfaces, die für die Verarbeitung von http-Anfragen benötigt werden. Am Ende des Dokuments sind noch einige Anwendungsfälle zu finden, z. B. für Page und Front Controller, Serverklassen usw.

Da die MVC-Komponenten den Kern des neuen Zend Frameworks 2 bilden werden, hängt vieles von deren Implementierung ab. Dies betrifft sowohl die technischen Aspekte als auch den weiteren zeitlichen Ablauf. Ohne Zend Framework MVC 2 wird es kein Zend Framework 2 geben. Erst wenn der MVC-Meilenstein abgeschlossen ist, können wir mit einem etwas konkreteren Releasetermin für das 2er Release rechnen.

Testorganisation für 2.0

Ralph Schindler hat die Testorganisation im Zend Framework 2 in der Contributors Mailingliste zur Diskussion gestellt. Er schlägt vor, dass alle Tests denselben Namensraum nutzen wie die restlichen Klassen der Bibliothek. Also statt Zend für die Bibliothek und ZendTest für die Tests soll nur Zend verwendet werden. Der größte Vorteil dabei ist, dass das Schreiben von Tests dadurch sehr vereinfacht wird. Nachteile sind die Verteilung eines Namensraums auf zwei verschiedene Verzeichnisse und die Probleme beim Einsatz in einer IDE, wenn bei der Autovervollständigung auch Testklassen vorgeschlagen werden. Eine endgültige Entscheidung zu dieser Frage ist bisher noch nicht gefallen.

Unterstützung für jQuery

Benjamin Eberlei hat vorgeschlagen, die Unterstützung für die jQuery-JavaScript-Bibliothek im Release 2 fallen zu lassen. Benjamin ist der Maintainer der Komponente und kann diese in Zukunft nicht mehr weiter pflegen. Auf diesen Vorschlag entbrannte eine angeregte Diskussion über ZendX_JQuery im Speziellen und den Sinn von Zend-Framework-Komponenten für JavaScript-Bibliotheken im Allgemeinen (das betrifft auch Dojo). Es wurde argumentiert, dass gerade bei umfangreichen JavaScript-Anwendungen der Einsatz von ZendX_JQuery bzw. Zend_Dojo sowieso zu kurz greift. Dagegen wurde gehalten, dass beide Komponenten aber auch sehr hilfreich sein können, gerade im Zusammenspiel mit Zend_Form. Wie üblich in diesem Zusammenhang, wurde auch wieder einmal die Entscheidung kritisiert, dass Dojo statt einer anderen JavaScript-Bibliothek offiziell unterstützt wird.

Entscheidend für ein Fortbestehen der Komponente ist, ob sich jemand findet, der ZendX_JQuery ins Zend Framework 2 übernehmen wird. In der Diskussion wurden auch Anregungen und Vorschläge für eine verbesserte Komponente gemacht. Wer sie also auch in Zukunft nutzen möchte, sollte sich an der Diskussion beteiligen bzw. sich in der Contributors-Mailingliste anmelden.

Proposals archiviert

Das Zend Framework Community Review Team (oder kurz CR-Team) ist aktiv geworden und hat sich alle älteren Proposals angeschaut, die schon länger nicht mehr bearbeitet wurden und demzufolge verwaist sind. Diese Proposals wurden auf „archiviert“ gesetzt, sind also nicht gelöscht worden. Sollte ein Proposal ungerechtfertigt auf „archiviert“ gesetzt worden sein, bitte beim CR-Team melden.

Ralf Eggert

Ralf Eggert ist Geschäftsführer der Travello GmbH mit Sitz in Pinneberg. Er hat bereits mehrere Projekte auf Basis des Zend Frameworks umgesetzt und ist Autor des Buchs „Das Zend Framework“, das livepage.apple.com im April 2009 im Addison-Wesley Verlag erschienen ist. Ralf bloggt auf http://www.blog.zf-info.de über das Zend Framework allgemein sowie auf http://www.zendframeworkbuch.de über sein Zend-Framework-Buch.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -