© S&S Media GmbH
Kolumne: Zeit für PHP

Wir haben leider gar kein Framework im Einsatz


Die Geschichte der PHP Frameworks beginnt in der Mitte der Nullerjahre, genau genommen 2005. Denn obwohl PHP eigentlich bereits seit 1995 existiert, war erst mit Version 4 eine rudimentäre Unterstützung von etwas verfügbar, das man aus heutiger Sicht mit viel gutem Willen als Objektorientierung bezeichnen mag. Das hinderte freilich einige Wagemutige nicht daran, erste objektorientierte Gehversuche zu unternehmen und Bibliotheken und Klassen zu veröffentlichen, die zumeist einfach nur bestimmte Funktionalitäten bündelten: PEAR, das PHP Extension and Application Repository, war geboren. Und wenn gleich diese Lösungen wenig mit dem zu tun haben, was man heute unter einem Framework verstehen mag, findet sich das modulare Konzept von PEAR auch in modernen Frameworks wieder.

Bis zur nächsten Generation von Frameworks in PHP brauchte es die Version 5 der Sprache in 2004 – jetzt mit ernstzunehmender Unterstützung für objektorientierte Entwicklung –, den Dotcom-Boom und nicht zuletzt den Dänen David Heinemeier Hansson. Ob man aus Sicht von PHP heute stolz darauf sein sollte, den Dotcom-Boom begünstigt zu haben, ist vermutlich eine Frage, über die man hervorragend diskutieren oder gar streiten kann. Unstrittig hingegen ist, dass David Heinemeier Hansson mit seinem Framework Ruby on Rails auch und gerade auf die PHP-Welt einen großen Einfluss hatte und vermutlich bis heute hat.

Wie die Frameworks groß wurden

Die PHP-Community schaute anfangs durchaus neidisch auf die ersten Erfolgsmeldungen, wie produktiv man doch mit einem Framework wie Ruby on Rails programmieren könne. Zugegebenermaßen ist ein Vergleich zwischen einer Programmiersprache und einem Framework nicht gerade sinnvoll, aber wer fragt in der heutigen (Medien-)Welt noch nach der Sinnhaftigkeit von Vergleichen? Das Standardbeispiel für Ruby-on-Rails-Anwendungen, die Erstellung eines Blogs in weniger als zehn Minuten, war durchaus beeindruckend, täuscht aber über die Komplexitäten einer realen Anwendung mit ernsthafter Geschäftslogik hinweg. Hinzu kommen die aus heutiger Sicht problematische Verwendung von Active Record und die starke Kopplung von Code an die dahinterstehende Datenbank. Wohl auch aus der Befürchtung heraus, dass PHP – nicht zuletzt wegen des Rails-Frameworks – Marktanteile an Ruby verlieren könnte, und weil es zu diesem Zeitpunkt kaum ernstzunehmende PHP Frameworks gab, kündigte die Firma Zend ein eigenes quelloffenes Produkt an: Das Zend Framework.

Bis zu dessen erstem Release am 30. Juni 2007 sollten allerdings rund zwei Jahre vergehen. Zeit, in der auch andere Entwicklerteams an ihren Frameworks für PHP arbeiteten und von denen einige eine durchaus beachtliche Verbreitung erreichten. Den Anfang unter den bekanntesten Frameworks dürften 2005 die Frameworks CakePHP, Agavi und Symfony 1 gemacht haben, gefolgt von CodeIgniter in 2006 und dessen Fork Kohana in 2007. Selbstverständlich entstanden nicht nur allgemein verwendbare Frameworks, sondern auch mehr oder weniger schlüsselfertige Lösungen für Content-Management-Systeme, interaktive Portale oder das Erstellen von Onlineshops. Neben Typo 3 und Drupal stieg vor allem Magento zu einer der beliebtesten (und häufig gehassten) Plattformen für E-Commerce auf. Fun Fact: Ursprünglich von Zend als Showcase für die Leistungsfähigkeit des eigenen Frameworks angepriesen, verwendete Magento 1 nur sehr wenige Teile einer frühen Vorversion des Frameworks, und selbst dabei wurden die zugrunde liegenden Konzepte fast bis zur Unkenntlichkeit verbogen.

Wer hat das beste Framework im ganzen Land?

Die zunehmende Vielfalt an Frameworks und Konzepten brachte schnell die Frage mit sich, welches Framework denn nun das beste sei. Diese Frage scheint natürlich nahe zu liegen, wenn man schon nicht (mehr) fragen darf, welche Programmiersprache denn nun die beste ist. Die Diskussionen, die sich an die Versuche einer Beantwortung anschließen, sind freilich in höchstem Maße religiös. Entwickler können schließlich über kaum ein Thema so trefflich streiten, außer vielleicht über Einrückungen und die Frage, an welche Stelle man ...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Gewinner-Teams

Wir bieten Lizenz-Lösungen für Teams jeder Größe: Finden Sie heraus, welche Lösung am besten zu Ihnen passt.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang