Zend Framework / Laminas
Was ist das Zend Framework?
Das Zend Framework ist ein quelloffenes PHP-Framework, das 2006 von Zend Technologies veröffentlicht wurde, dem Unternehmen hinter der Zend Engine und damit dem Kern des PHP-Interpreters. Es galt lange als das Enterprise-Framework der PHP-Welt und setzt auf über sechzig lose gekoppelte Komponenten für Datenbankzugriff, Authentifizierung und Berechtigungen, die einzeln oder als vollständiges Framework nutzbar sind.
Der Aufbau folgt strengen Vorgaben. Klar getrennte Zuständigkeiten, ausdrückliche Konfiguration statt Voreinstellungen und feste Schnittstellen machten den Code auch in großen Teams beherrschbar. Bequem war das nie, denn jede Einstellung musste geschrieben werden. Eingeordnet ist es im Umfeld der PHP-Entwicklung.
Der Namenswechsel
2019 übergab Zend Technologies das Projekt an die Linux Foundation. Seither heißt es Laminas und wird als Gemeinschaftsprojekt weitergeführt. Technisch ist es dasselbe Zend Framework unter neuem Namen, geändert hat sich allein der Namensraum im Code.
Für den Bestand ist das keine Formalie. Sicherheitsupdates und Weiterentwicklung erscheinen ausschließlich unter dem neuen Namen. Eine Anwendung, die noch den alten Namensraum nutzt, erhält keine Aktualisierungen mehr und braucht zuerst diese Umstellung, bevor sich überhaupt etwas anderes entscheiden lässt. Der Aufwand dafür ist überschaubar, weil das Laminas-Projekt für den Wechsel ein eigenes Werkzeug bereitstellt, das den Namensraum weitgehend automatisch ersetzt.
Was für Bestandsanwendungen folgt
Drei Fragen führen zur Entscheidung. Läuft die Anwendung noch auf einer PHP-Version ohne Sicherheitsupdates, ist der Handlungsdruck unabhängig vom Framework. Ist die Umstellung des Namensraums erfolgt, besteht kein akutes Risiko aus dem Framework selbst. Soll die Anwendung weitere Jahre laufen und aktiv wachsen, stellt sich die Frage nach dem Framework neu.
Der Engpass ist heute selten die Technik, sondern das Personal. Entwicklerinnen und Entwickler mit Erfahrung im Zend Framework sind am Markt selten, und was es einst auszeichnete, bieten heute verbreitetere Alternativen ebenfalls. Das verlängert jede Einarbeitung und verteuert jede Weiterentwicklung.
Wege aus dem Bestand
Der naheliegende Weg führt zu Symfony, weil beide dieselben Grundgedanken teilen und viele Konzepte unmittelbare Entsprechungen haben. Der Weg zu Laravel verlangt mehr Umdenken, weil dort Konvention und ein anderer Datenbankzugriff vorherrschen, bietet dafür aber das größere Umfeld.
In beiden Fällen ist ein schrittweiser Umbau möglich, bei dem neue Funktionen bereits im Zielframework entstehen, während der Altbestand nach und nach abgelöst wird. Das Vorgehen dazu behandelt der Beitrag zur Legacy-Modernisierung.
Aktuelle Themen