Kolumne: ZendColumn

Vom Zend Framework 3 und Apigility
Kommentare

In dieser neuen Zend-Framework-Kolumne erfahren Sie wieder die Neuigkeiten zu den letzten Releases, sie lernen einige interessante Fremdmodule kennen und erfahren, was es mit dem neuen Open-Source-Projekt Apigility auf sich hat. Zudem finden Sie einen Ausblick in die Entwicklung des Zend Frameworks 3, das in 2014 erscheinen wird.

Zend Framework Module

Kyle Spraggs hat in einem Blogbeitrag alle Zend-Framework-2-Module aufgeführt, an denen er in letzter Zeit gearbeitet hat. Dazu zählen unter anderem SpiffyNavigation, das voraussichtlich ZendNavigation im ZF3 ersetzen wird, sowie das Modul SpiffyConfig, das die Konfiguration einer ZF2-Anwendung deutlich beschleunigen soll. Weitere Module von Kyle sind SpiffyAuthorize, SpiffyCrud und SpiffyConnect.

Wenige Tage später ist Wesley Overdijk dem Beispiel gefolgt und hat seine eigenen Module in einem eigenen Beitrag vorgestellt. Zu seinen Modulen zählen unter anderem AssetManager zum Verwalten von statischen Dateien wie Grafiken, CSS und JavaScript innerhalb der Module, SxBootstrap zur Unterstützung von Twitter Bootstrap, sowie SxBlog zum Einrichten eines Blogs auf einer ZF2-Website.

ZfcUser ist zweifelsohne eines der beliebtesten ZF2-Module. Leider liegt die Weiterentwicklung aus verschiedenen Gründen schon etwas länger auf Eis. Und auch die Umsetzung für das Nachfolgemodul ZfcUser2 lässt immer noch auf sich warten. Dies ist für alle, die ihre Anwendung auf diesem Modul aufgesetzt haben, natürlich keine schöne Situation. Wer die Modules-Website ein wenig verfolgt und durchsucht, kann dort sicherlich auch weitere User-Module finden. Bleibt die Frage, ob man dadurch nicht vom Regen in die Traufe kommt, wenn man sich auf ein weiteres Modul stützt, das evtl. später auch nicht mehr weiterentwickelt wird.

Leider etwas schade ist die Tatsache, dass die Modules-Website bisher immer noch keine Bewertung und Sortierung von Modulen bietet. Wenn man zu einem bestimmten Thema mehrere Module findet, muss man diese alle einzeln durchgehen und prüfen und kann sich nicht auf eine Bewertung durch die Community verlassen. Es gibt im IssueTracker zwar einige Einträge zu dem Thema, aber leider noch keine Lösung. Vielleicht findet sich ja ein Leser dieser Kolumne, der Zeit und Lust hat, der ZF2-Community durch ein solches Feature unter die Arme zu greifen.

Wenn Sie als Leser des PHP Magazins ein eigenes ZF2-Modul entwickelt haben, auf das Sie besonders stolz sind, dann schicken Sie mir gerne eine Nachricht, und ich stelle dies gerne in einer der nächsten Kolumnen vor.

Apigility

Zend hat auf der diesjährigen ZendCon das neue Open-Source-Projekt Apigility der Öffentlichkeit vorgestellt. Mit dem Tool können API-basierte Applikationen von hoher Qualität entwickelt und betrieben werden. Dafür stellt Apigility eine Benutzerschnittstelle bereit, um standardisierte APIs auf REST-Basis aufbauen zu können. Dabei werden Features wie Error Handling, Validierung und Filterung, HTTP-Inhaltsvereinbarung und Versionierung der APIs bereitgestellt. Das Tool basiert auf dem Zend Framework und der Code kann bei GitHub heruntergeladen werden. Auf der Website ist zudem ein Demovideo zu finden, in dem die genaue Vorgehensweise gezeigt wird.

Zend Framework 3 – ein Ausblick

Wie schon mehrfach erwähnt, soll das Zend Framework 3 spätestens 24 Monate nach dem ersten stabilen ZF2-Release erscheinen. Das wäre im September 2014 der Fall. Die Arbeiten am ZF3 haben bereits begonnen und vor einigen Wochen wurde im Wiki eine Übersicht über alle Brüche in der Rückwärtskompatibilität erstellt. Dieses Dokument soll als Grundlage für eine Migrationsanleitung vom ZF2 zum ZF3 dienen.

Am besten dokumentiert sind die Änderungen bei den Input-Filtern. Dabei steht vor allem die Optimierung der Performance im Fokus. Die wichtigste Änderung ist die Umbenennung in InputCollection, die ich begrüße, da der Begriff InputFilter teilweise irreführend ist. Zudem werden die Validierungsgruppen von den InputCollection-Objekten entkoppelt werden. Außerdem werden sowohl die Input-Elemente als auch die InputCollection-Objekte zustandslos sein, wobei das Ergebnis der Filterung und Validierung in einem InputFilterResult gekapselt wird. Das InputFilterResult-Objekt wird sich sogar serialisieren lassen und wird somit noch flexibler handhabbar sein.

Bei den Filtern selbst wird es diverse Änderungen geben. So werden alle Filter die _invoke()-Methode implementieren und somit auch aufrufbar sein. Auch hier wird die Performance optimiert und einige Methoden einiger Filterklassen umbenannt werden. Auch die Validatoren werden zustandslos sein, sodass das Ergebnis der Validierung in ein ValidateResult ausgelagert wird. Zudem werden die Optionen sowohl in den Filtern als auch in den Validierern dem ZF2-Standard folgen und als „underscore_separated“ statt „camelCased“ notiert werden.

Weitere geplante Änderungen betreffen den Eventmanager, den Servicemanager, den Hydratoren, die Formulare, den Model-Manager und die Rbac-Komponente. Das Dokument wird laufend aktualisiert und bietet schon einen guten Ausblick in der Zukunft.

Was sonst noch …

Das erste ZendTogether, das für November 2013 geplant war, muss leider bis auf unbestimmte Zeit verschoben werden. Vielleicht wird im nächsten Jahr ein neuer Versuch gestartet.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -