Archiv für die 'Zend Framework' Kategorie

10 Millionen Downloads vom Zend Framework

Samstag, 06.12.2008

Andi hat es heute in seinem Blog veröffentlicht. Das Zend Framework wurde mittlerweile 10 Millionen mal herunter geladen. Sicher sind da auch diejenigen mit bei, die das Zend Framework mehr als ein Mal herunterladen. Ich selber komme bestimmt auf 30 bis 40 Downloads seit dem Release 0.1.1 vor 2.5 Jahren. Dennoch finde ich die Zahl sehr beeindruckend. Andi vermutet aufgrund der exponentiell steigenden Downloadzahlen auch, dass die 100 Millionen Download Marke schon Ende 2009 geknackt werden könnte.

Mich würden die Vergleichszahlen anderer PHP Frameworks (eZ components, CakePHP, Symfony, CodeIgniter, etc.) mal interessieren. Kennt da jemand verlässliche Quellen?

Ganz kurz: drei gute Links

Dienstag, 02.12.2008

Zum Abend drei gute Zend Framework Links von mir:

  1. Tobi hat ein kleines Tutorial zum Einsatz von Zend_Http und Zend_Dom für Flickr veröffentlicht.
  2. Bei Amazon.de habe ich ein neues Buch zum Aufbau eines CMS mit dem Zend Framework gefunden
  3. Ich suche in meinem anderen Blog noch Testleser für das Zend Framework Buch

Viel Spass beim Klicken und Lesen

Zend Framework Tutorial Reloaded

Mittwoch, 26.11.2008

Lang, lang ist es her, als ich die Arbeit zum Zend Framework Tutorial aufnahm. Damals war das Release 0.2.0 gerade heraus gekommen und einige der veröffentlichten Teile basieren sogar noch auf diesem Release aus grauer Vorzeit, auch wenn im Intro steht, dass 0.6.0 das unterstützte Release sei. Zwischenzeitlich gab es einige Versuche von anderen Zend Framework Nutzern, das Tutorial weiter zu führen oder gar zu vervollständigen, aber geklappt hat dies bisher nicht.

Wie mancher Leser dieses Blogs bereits weiss, arbeite ich momentan an einem deutschsprachigen Buch zum Zend Framework, welches sich an Einsteiger und Fortgeschrittene wendet. Das Buch ist seit einigen Tagen auch sogar schon bei Amazon gelistet und kann vorbestellt werden…

Derzeit schreibe ich noch an einigen Kapiteln und die nächsten Wochen werden eine Herausforderung werden, damit ich auch fertig werde. Neben einen Überblick über die meisten Komponenten finden sich in dem Buch auch einige Tutorial-ähnliche Kapitel. Unter anderem wird dort auch eine Anwendung von A bis Z entwickelt und genau an dieser Stelle schließt sich der Kreis dieses Beitrags. Denn das bisher niemals fertig gestellte Tutorial wird in dem Buch in etwas anderer Form auf den neuesten Stand gebracht, überarbeitet und vor allem komplettiert. :-)

Ich hoffe, dass der eine oder die andere das genauso gut findet, wie ich selber. So, nun aber Beine in die Hand, Buch muss fertig werden… ;-)

Zend Framework 1.7 ist draussen

Dienstag, 18.11.2008

Gestern war es soweit und das neue Release 1.7 des Zend Framework ist veröffentlicht worden und kann fortan heruntergeladen werden. Dieses Release steht ganz im Zeichen der Performanceoptimierung und des Bugfixings. Fast 300 Bugs wurden in der Bughunting Woche erledigt, wie dem Issue Tracker zu entnehmen ist. Zudem enthält das Manual nun einen Performance Guide mit Tipps, wie ihr eure Zend Framework Anwendung optimieren könnt. Eine vollständige Liste aller neuen Komponenten und Verbesserungen finden sich in der Devzone von Zend.

Ich möchte an dieser Stelle nur die Highlights aus meiner Sicht besonders hervorheben:

  • Performanceoptimierungen für Zend_Loader, Zend_Controller und die Server Komponenten
  • Neue Komponente Zend_Amf zur Unterstützung des Action Message Format (AMF) von Adobe
  • Neue Komponente Zend_Service_Twitter für alle Freunde der Kurznachrichten, ich twittere übrigens hier, wenn Twitter nicht gerade mal wieder down ist
  • Mit der neuen Komponente ZendX_JQuery wird nun neben Dojo auch die Javascript Bibliothek JQuery unterstützt, hierbei handelt es sich um eine Extra-Komponente (erkennbar an dem ZendX), die nicht offiziell vom Zend Framework Team, sondern aus der Community unterstützt wird
  • Zend_Search_Lucene kann nun auch OpenOffice Dokumente indizieren
  • Zend_Tool ist nun im Incubator und wird wohl in einem der nächsten Releases auch offiziell in der Library aufgenommen werden
  • Neue Komponenten Zend_Text_Table, Zend_ProgressBar, Zend_Config_Writer
  • diverse Erweiterungen und Verbesserungen für die I18N Komponenten sowie für den Dateitransfer
  • und einiges mehr

Wie ich finde, sind in dem neuen Release mal wieder einige sehr brauchbare neue Komponenten enthalten. Und auch der Fokus auf Performance und Bugfixing trägt sehr zur Qualitätsoptimierung des Zend Frameworks bei.

Gut gemacht Jungs und Mädels!

PHP Magazin 1/09 ist erschienen (mit meinem Zend_Pdf Artikel) ;-)

Donnerstag, 13.11.2008

Ich habe die Ausgabe schon seit Montag auf dem Tisch, am Kiosk gibt es sie erst seit gestern: die neue Ausgabe 1/09 des PHP Magazins. Darin enthalten ist unter anderem auch ein Artikel über die Zend_Pdf Komponente aus dem Zend Framework, der aus meiner Feder stammt. Der Artikel enthält insgesamt 10 Beispiele für den Einsatz von Zend_Pdf, die Schritt für Schritt immer komplexer werden. Unter anderem wird das Umbrechen langer Texte sowie die Erstellung und Verwendung von PDF Vorlagen erläutert. Ich freue mich auch wie immer auf euer Feedback.

Ein weiterer Artikel in der selben Ausgabe stammt von Matthias und behandelt die Themen Authentifizierung und Autorisierung mit Zend_Auth und Zend_Acl. Habe mir den Artikel noch nicht durchgelesen, die Schaubilder machen aber einen sehr guten Eindruck. Damit lohnt die Ausgabe für zend Framework Nutzer gleich doppelt.

P.S. Der unermüdliche Nils hat die Ausgabe in seinem PHP Blog auch schon vorgestellt.

Zend Framework Performance optimieren

Dienstag, 04.11.2008

Das Release 1.7 vom Zend Framework steht ja bekanntermaßen im Zeichen der Performance Optimierung. Bis das Release endlich erscheint, wird in vielen Bereichen die Performance optimiert, um die Laufzeiten einen Zend Framework Anwendung zu optimieren. Erste Erfolge bei Zend_Loader konnten wohl schon erzielt werden. Zudem ist meines Wissens ein eigenes Kapitel zum Thema Performance für das Manual geplant.

Till Klampaeckel hat nun einen sehr lesenswerten Beitrag zur Performance Steigerung des Zend Frameworks veröffentlicht. Er beschreibt eingangs die aktuelle Situation für das Projekt, wie viele Zugriffe es hat und wie der technische Background ist. Danach fasst er seine Erfahrungen zusammen und schneidet folgende Themen an:

  • APC einsetzen
  • Konfigurationseinstellungen
  • Alle require_once Aufrufe durch den Autoloader von Zend_Loader ersetzen (bringt am meisten)
  • Zend_Loader aufbohren und optimieren
  • Datenbankergebnisse cachen
  • Metadaten Cache für Zend_Db_Table aktivieren
  • Apache Konfiguration anpassen

Jeder, der sich intensiv mit dem Zend Framework beschäftigt, sollte sich den Beitrag von Till aufmerksam durchlesen. Interessant sind auch die Kommentare zu dem Beitrag.

IPC: Session “Zend Framework – Past, Present and the Future”

Samstag, 01.11.2008

Mit ein wenig Verspätung kommt nun noch eines Zusammenfassung des Vortrags “Zend Framework – Past, Present and the Future” von Gaylord Aulke, in dem das Zend Framework im Wandel der Zeit beleuchtet wurde.

Gaylord begann mit einem kurzen Blick auf die Zeitleiste des Zend Frameworks seit dem Release 1.0. Die Anzahl der Downloads beträgt mittlerweile über 6 Millionen, davon konnten 650.000 verschiedene Nutzer identifiziert werden. Es folgte ein kurzer Überblick über die einzelnen Bereiche, die das ZF abdeckt, als da wären, Sicherheit, MVC, Daten, Internationalisierung, Webservices und der Kern. Ein großer Vorteil des Zend Frameworks ist es, dass man nicht gewzungen wird, irgend eine Komponente zu verwenden, wenn man dies nicht möchte.

Danach hat Gaylord einige der neuesten Features aus den Releases 1.5 (z.B. Zend_Form, Zend_Layout, LDAP, OpenID, Infocard sowie Unterstützung der neuen YouTube API etc.), 1.6 (Zend_Tool, Zend_Paginator, Zend_Captcha etc.) und 1.7 (Zend_Dojo, Zend_Amf, ZendX_JQuery sowie Optimierungen der Performance) herausgestellt.

Es folgten einige gute Grüne, um sich für das ZF zu entscheiden. Es ist extrem einfach und produktiv und es beinhaltet die neuesten Techniken der Webentwicklung (z.B. AjAX, Webservices, Syndication). Das ZF bietet freundliche und und einfache Lizenzen, die dem Einsatz des ZF gerade im Unternehmensbereich nicht entgegen sethen. Die hohe Codequalität, die professionelle Services (Training, Zertifizierung, Consultung und Support) sowie die offenen Standards erleichtern die Entscheidung für das Zend Framework noch weiter.

Als nächstes zeigte Gaylord einige Details zur Dojo Integration mit einigen Codebeispielen und gabe einen Überblick von Flex und PHP mit Zend_Amf, das offiziell von Adobe unterstützt wird. Auch ein Überblick über die Applikations- und Verzeichnisstruktur fehlte nicht.

Zum Schluss ging Gaylord auch kurz auf die Zukunft des Frameworks ein. Die Dokumentation soll weiter verbessert werden. Zend_Build soll den Buildprozess vereinfachen und auch die AjAX Unterstützung soll weiter ausgebaut werden. Die Integration des ZF in Tools und IDEs wie Zend Studio soll verbessert werden. Entwicklertools und geeignetes Packaging soll Drittanbietern das Anbieten von Komponenten erleichtern. Es werden weitere Partnerschaften und große Zend Framework Anwendungen gesucht. Auch agile Methoden, mehr Tools, weitere “best practices”, weitere Funktionalitäten und mehr Spass sollen das Zend Framework weiter voranbringen. Zudem soll Zend Framework 2.0 “bald” erscheinen. Einen genauen Releasetermin konnte Gaylord jedoch nicht nennen.

Alles in allem gab es für mich in dieser Session nicht viel Neues zu erfahren. Liegt aber auch daran, dass ich mich täglich mit dem Zend Framework beschäftige. Ich habe aber danach mit einigen anderen Teilnehmern gesprochen, die sich bisher nicht sehr intensiv mit dem ZF beschäftigt hatten. Die Meinungen waren durchweg positiv, da der Vortrag einen guten Überblick über das ZF brachte.

IPC: Session “Best of Two Worlds: eZ Components & Zend Framework”

Donnerstag, 30.10.2008

Der Vortrag von Stefan Priebsch zum Thema “Best of Two Worlds: eZ Components & Zend Framework” behandelte (wie überraschend) die eZ Components und das Zend Framework. Stefan berichtete von seinen persönlichen Eindrücken zu beiden Frameworks und stellte einige Komponenten beider Frameworks heraus, die er für besonders erwähnenswert hielt.

Die eZ Components können mit Hilfe von PEAR, aus Subversion heraus oder durch ein komprimiertes Archiv installiert werden. Das Zend Framework kann ebenfalls per Subversion oder durch ein komprimiertes Archiv installiert werden. Es gibt für das ZF aber nur ein inoffziellen PEAR Channel. Eine Besonderheit der eZ Components ist, dass alle Komponenten auf der Klasse ezcBase basieren.

Stefan ist kurz auf die unterschiedlichen Begrifflichkeiten eingegangen. Bei den eZC ist der Name “Components” bereits enthalten und weist darauf hin, dass es sich um eine Komponentensammlung handelt. Beim ZF ist der Name “Framework” enthalten und weist darauf hin, dass es sich um ein Framework handelt. Wenn man mich fragen würde, würde ich sagen, dass beide sowohl als Komponentensammlung als auch als Framework eingesetzt werden können. Was beide nicht sind: Fullstack-Frameworks, die einen mit Konfigurationsdateien erschlagen und jegliches Denken abzunehmen versuchen. Aber zum Glück fragt mich ja niemand… ;-)

Im weiteren Verlauf hat Stefan die jeweiligen Model-View-Controller Implementationen in Form von Grafiken für die eZC und das ZF gezeigt. Kleine Anmerkung dazu: die Grafik zum ZF zeigte im Prinzip nur den Ablauf, wenn man Zend_Controller_Front verwendet. Der Model und der View Part ist dort gar nicht enthalten.

Stefan hat danach einige nützliche Komponenten der eZC ausführlicher vorgestellt:

  • ezcArchive
  • ezcGraph
  • ezcMail
  • ezcSearch

Und auch aus dem ZF hat er einige Komponenten herausgepickt:

  • Zend_Acl
  • Zend_Pdf
  • Zend_Mail *)
  • Zend_Search_Lucene

Zum Schluss zeigte Stefan kurz auf, wie man beide Welten kombinieren kann, was durch die Autoloader-Funktion schneller geht als Nase putzen.

Auf die Frage, wer denn alles die eZ Components und das Zend Framework einsetzt, gabe es eine leichte Tendenz in Richtung des Zend Frameworks. Ich selber habe meinen Schwerpunkt bekanntlich auf das Zend Framework gelegt. Aber ich empfehle jedem, der noch auf der Suche ist, auch die eZ Components in die engere Auswahl aufzunehmen und diese gründlich auf die eigenen Bedürfnisse hin zu untersuchen.

*) Kleiner Hinweis, der mir erst später eingefallen ist: Zend_Mail bietet natürlich auch die Möglichkeit, Emails per POP3, IMAP, usw. abzurufen.

IPC: Session “Search as a Service”

Mittwoch, 29.10.2008

Markus Wolff hat in seiner Session “Search as a Service” das Projekt Marjory vorgestellt, an dessen Entwicklung er maßgeblich beteiligt ist. Ich habe den Anfang leider verpasst, weil ich etwas aufgehalten wurde.

Marjory basiert auf dem Zend Framework und nutzt vor allem die Zend_Search_Lucene Komponente für die Umsetzung der Volltextsuche. Marjory ist vergleichbar mit Solr und nutzt das gleiche XML Format. Dies erleichtert den Umstieg von Solr auf Marjory und umgekehrt bei Bedarf.

Marjory ist ein Webservice für einen Volltextindex. Dabei bildet der Marjory Webservice die Schnittstelle zwischen der Anwendung und dem Volltextindex. Als Suchmaschine kann eine beliebige verwendet werden, wobei Zend_Search_Lucene als Standard implementiert ist. Dadurch das Marjory als Webservice konzipiert wurde, ist es ein leichtes, die Suchmaschinen auf einem dedizierten Server laufen zu lassen. Dieser dedizierte Server kann sich somit auf die Indizierung und die Suchabfragen konzentrieren und kann sogar die Suchkataloge von mehreren unabhängigen Sites verwalten.

Die Indizierung kann per Übergabe eines XML Strings erfolgen, der die zu indizierenden Daten enthält. Alternativ kann auch eine Url übergeben werden, die dann von Marjory geparst wird. Bisher können nur HTML Dokumente verarbeitet werden, in Zukunft sind auch PDFs geplant. Markus hat in seinem Vortrag dann auch einige Beispiele für das Anlegen neuer Kataloge, das Indizieren neuer Dokumente und das Senden von Suchabfragen gezeigt.

Alles in allem halte ich Marjory für ein sehr interessantes Projekt, auf das ich auch in Zukunft ein Auge werfen werde. Da es zudem noch auf dem Zend Framework basiert, macht die Sache für mich noch interessanter. Die Idee, die Volltextsuche als Webservice auf einen anderen Server fern der eigenen Anwendung aufzusetzen, finde ich sehr gut. Mal schauen, ob ich Marjory auch mal für eigene Projekte einsetzen kann. Markus erwähnt auch, dass Marjory bereits produktiv eingesetzt wird, unter anderem auch von Jimdo. Ab und zu berichtet Markus auch in seinem Blog über den aktuellen Stand von Marjory.

Internationale PHP Konferenz in Mainz

Samstag, 25.10.2008

Am nächsten Montag (27.10.) beginnt die 14. Internationale PHP Konferenz in Mainz und läuft bis zum Freitag (31.10.). Wenn nichts mehr dazwischen kommt, werde ich von Dienstag bis Donnerstag auch vor Ort sein. Damit verpasse ich zwar den ersten Workshop Tag am Montag und den Enterprise Day am Freitag, aber mehr als drei Tage ist zeitlich leider nicht drin. Und das Programm ist an den drei Konferenztagen mehr als gut ausgefüllt.

Zum Zend Framework gibt es zwei Sessions. Am Mittwoch gegen 11:45 berichtet Stefan Priebsch über “Best of Two Worlds: eZ Components & Zend Framework” und am Donnerstag gegen 14:15 hält Gaylord Aulke einen Vortrag über das Thema “Zend Framework – Past, present and the Future”. Die letzte Session wurde erst gestern verkündet, ist also noch ganz frisch. Diese beiden Sessions werde ich auf jeden Fall besuchen. Für den Rest der Zeit studiere ich gerade intensiv den Zeitplaner auf der Konferenz Website und versuche mir einen Plan zu machen. Als wenn die Auswahl nicht schon schwer genug wäre, findet parallel auch die Ajax in Action Konferenz statt mit vielen Themen rund um den Hausputz (kleiner Schwerz) ;-)

Darum herum gibt es auch noch diverse Programmpunkte, bei denen ich mir noch nicht ganz klar bin, was mich da erwarten wird. Dies ist schließlich meine erste Teilnahme an der Internationalen PHP Konferenz. Aber so falsch klingen Expo Reception, Ballroom und Party ja nicht. Gerüchten zufolge sollen die Programmpunkte nicht unwesentlich mit Spaß, Entspannung und kühlen Getränken zu tun haben. Ich lasse mich da mal überraschen.

Markus und Nils freuen sich auch schon auf die Konferenz und bei Mayflower kann man sogar Zend Framework Kaffee trinken. Selbstverständlich werde ich versuchen, hier im Blog zeitnah von der Konferenz zu berichten. Hoffentlich finde ich bei so vielen Aktionen auch noch Zeit, weiter an meinem Zend Framework Buch zu schreiben.