Erste Planungen zum Zend Framework 2.0
Matthew Weier O’Phinney, der Projektleiter des Zend Frameworks, bittet um Teilnahme an den Überlegungen zu einer Version 2.0 des Zend Frameworks. Er hat dazu heute eine erste Roadmap gepostet, welche die derzeitigen Überlegungen für Veränderungen am Zend Framework (zunächst mal auf einer allgemeinen Ebene) beinhalten.
Stichpunkte, die in dem Papier erwähnt werden, sind beispielsweise PHP 5.3 als Mindestvoraussetzung, der Einsatz von Namespaces, __invoke(), closures, goto, Late Static Binding (LSB), usw…
Eine der größeren geplanten Umstellungen betrifft die MVC-Implementierung des Zend Frameworks. Hier gibt es Optimierungspotential innerhalb des Dispatchers. Zur Diskussion stehen derzeit drei verschiedene Ansätze, wie man den Ablauf verändern könnte.
Ein Ansatz ist, die derzeit bestehenden flexiblen Möglichkeiten ein wenig zu beschränken und nur noch die üblichen Szenarien zu unterstützen (eine 80/20-Lösung).
Ein zweiter Lösungsansatz ist, den Dispatcher dadurch zu vereinfachen, dass man nur noch explizite Routen zulässt.
Eine weitere Überlegung ist, den Front Controller zukünftig als Zustandsmaschine (finite state machine, bekannt von Parsern) zu realisieren, allerdings ereignisgesteuert aufgrund von Ereignissen und Nachrichten. Damit wäre es möglich, bestimmte Zustände zu definieren und diese direkt anzuspringen. Bei Einsatz des in PHP 5.3 neu eingeführten “goto” könnte dies ohne Schleife realisiert werden (wenngleich viele Entwickler bei dem Gedanken an “goto” erstmal aufschreien werden). JavaScript-Entwicklern sind diese ereignisgesteuerten Architekturen bereits bekannt (vgl. “Event-driven finite state machine“).
Die Überlegungen für das Zend Framework V2.0 werden sicherlich dazu führen, dass es nicht mehr abwärtskompatibel zur V1.x ist. Dies ist jetzt also der richtige Zeitpunkt, an der Diskussion über notwendige Änderungen teilzunehmen.
