Entwicklung & Design

Erfahrungen aus der Entwicklung von Tine 2.0: Groupware von Grund auf neu

Seite 4 / 5

Design Patterns nicht immer ideal

Spätestens seit der Version 5 sind Objektorientierung und Design-Patterns sehr populär in der PHP-Szene. Und das mit gutem Grund, denn sie helfen oftmals, den Code schlanker und performanter zu gestalten. Der damit einhergehende Standardisierungseffekt hilft überdies enorm, sich im Code zurechtzufinden – besonders, wenn dessen Erstellung schon eine Weile zurückliegt oder er von Kollegen geschrieben wurde.

Allerdings gibt es auch Situationen, in denen Patterns überhaupt nicht weiterhelfen oder den Code eher verschlechtern. Manche der in den Lehrbüchern vorgestellten Patterns sind für PHP schlicht ungeeignet. Als Credo sollte deshalb gelten: Patterns verwenden, wenn sie sinnvoll erscheinen, aber an anderen Stellen auch bewusst darauf verzichten und stattdessen die Funktionsweisen und den Prozessablauf gut dokumentieren.

Zeitersparnis durch Frameworks

Eine weitere Grundregel sollte außerdem lauten: Das Rad nicht immer wieder neu erfinden. Als vor sieben Jahren die Entwicklung des „eGroupWare“-Vorgängers „phpgroupware“ unter PHP 3 begann, gab es noch keine Frameworks im heutigen Sinne. Für alle zu bewältigenden Aufgaben wurden daher eigene Skripte geschrieben oder man passte kleine externe Programme an die eigenen Bedürfnisse an. Mit der Zeit kamen so über 60 MB PHP-Code zusammen, für deren Wartung und Sicherheitssupport allein das jeweilige Projekt zuständig war.

Tine 2.0 setzt auf das Zend Framework im PHP-Backend und auf ExtJS im JavaScript-Client. Für die Wahl des einen oder anderen Frameworks gibt es immer viele gute Gründe, und jedes Lager hat Anhänger, die gerne Mailinglisten und Foren mit Argumenten für den exklusiven Anspruch des eigenen Frameworks füllen. Letztendlich ist es aber fast egal, für welches Framework man sich entscheidet – Hauptsache, man nutzt die Vorteile des externen Codes und hört auf, für jedes Standardproblem eine selbstgestrickte Lösung zu erstellen.

Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Schreib den ersten Kommentar!