Die Entwicklung vom Zend Framework 2.0 hat begonnen
Vor kurzem hat die Entwicklung vom Zend Framework 2.0 begonnen. Die Roadmap wurde ja bereits im November 2009 erstellt und dort wurde viel über die geplanten Änderungen diskutiert. Mittlerweile ist die reine Diskutier-Phase abgeschlossen und seit dem 25.2.2010 gibt es endlich im SVN einen eigenen Branch für das 2.0 Release. Für die erste Phase waren ursprünglich folgende Aufgaben geplant:
- Entfernen aller require_once() Aufrufe
- Überarbeitung der Test Suite (Testsammlungen AllTests entfernen und eine eigene PHPUnit Bootstrap einrichten)
- Konvertierung aller Dateien zu den PHP Namensräumen
- Alternatives Plugin System einrichten
Matthew Weier O’Phinney, der Projektleiter für das Zend Framework beim Unternehmen Zend, berichtet in der Contributers Mailingliste in regelmäßigen Abständen vom Stand der Dinge. Bisher wurde folgendes bereits umgesetzt:
- Alle require_once() Aufrufe wurden entfernt. Um Abhängigkeiten darstellen zu können, wurden diese in den Docblocks mittels @uses notiert. Hierdurch wurden auch alle @see Notationen obligatorisch und ebenfalls entfernt, um den Code sauber zu halten. Zusätzlich erleichtern die @uses Angaben später die Konvertierung zu den PHP Namensräumen.
- Auch die Test Suite wurde bereits ein wenig überarbeitet. Alle AllTests.php Dateien (darin wurden Testfälle gesammelt) wurden entfernt und die PHPUnit Bootstrap wurde eingerichtet. Da in den Testfallklassen bereits @group Deklarationen vorhanden waren, erleichtert dies zukünftig die Ausführung der Tests. Das Ausführen der Tests erledigt PHPUnit jetzt komplett selbständig. Zusätzlich kann einfach eine Gruppe von Testfällen über phpunit –group=Zend_View ausgeführt werden. Ein weiterer Vorteil dieser Gruppen liegt darin, dass alle View Helper aus den Verzeichnissen Zend/View/Helper/, Zend/Dojo/View/Helper/ und ZendX/Jquery/View/Helper/ zusammen ausgeführt werden können.
- Beim Durcharbeiten des Tests ist Matthew aufgefallen, dass einige gar nicht in den AllTests.php Dateien eingetragen wurden sind. Die AllTests.php Dateien mussten manuell gepflegt werden und dabei wurde hier und dort auch mal ein Testfall vergessen. Diese vergessenen Testfälle funktionieren mitunter gar nicht mehr, weil sie teilweise seit Monaten nicht mehr ausgeführt wurden. Damit beim Ausführen aller Testfälle nun nicht laufend Fehlermeldungen auftauchen, die nichts mit den derzeitigen Umbauarbeiten zu tun haben, hat Matthew diese mit @group disable markiert und die Ausführung von Tests dieser Gruppe in der phpunit.xml deaktiviert.
- Alle Testfälle konnten nach diesen Umbauarbeiten bereits erfolgreich ausgeführt werden. Somit ist der aktuelle Stand vom stabilen 1.10.2 Release nun gewahrt.
- Die Komponente Zend_Loader_Autoloader hat einige Erweiterungen bekommen. Es gibt nun registerPrefix und registerNamespace Methoden, um sowohl die alte Präfixe als auch die neuen Namensräume zu unterstützen.
Zudem hat Matthew auch die nächsten Teilaufgaben angekündigt, an denen nun gearbeitet wird:
- Konvertierung zu den Namensräumen
- Refaktorierung der Exceptions
Wie ihr seht, wurde bisher also noch keine wirklich neuen Features implementiert. Derzeit geht es wirklich erst nur um die grundlegenden Aufräumarbeiten, um das Zend Framework 2.0 fit für PHP 5.3 zu machen und die Arbeit mit den Unit-Tests zu erleichtern. Wir dürfen gespannt sein, wie es weiter geht.

Freitag, 12.03.2010, um 11:50
Ich sollte wohl auch mal die Contributors-Liste abonnieren :) Danke für den Zwischenstand. Bin schon sehr gespannt, was alles in Version 2.0 mit einfließt, denn die Änderungen bei Symfony 2.0 sahen schon recht vielversprechend aus :)
Freitag, 12.03.2010, um 16:26
Das ist an mir auch irgendwie vorbei geflogen ohne das ich das mitbekommen habe – vielen Dank für die Zusammenfassung Ralf.
Ich werd mich dann wohl nun mal auf wohl oder übel damit beschäftigen meinen Debian Lenny Systemen PHP5.3 bei zu bringen … Ubuntu soll ja aber der kommenden April Version PHP5.3 bereits an Board haben.
Samstag, 13.03.2010, um 13:36
[...] Schöne Übersicht von Ralf Eggert zum Zend Framework 2.0 Fortschritt: http://blog.zf-info.de/2010/03/11/die-entwicklung-vom-zend-framework-2-0-hat-begonnen/ [...]
Samstag, 13.03.2010, um 22:59
[...] http://blog.zf-info.de/2010/03/11/die-entwicklung-vom-zend-framework-2-0-hat-begonnen/ [...]