Open Source im professionellen Einsatz

Webapplikationen entwickeln mit Zope X3.0

Formel X

Der Applicationserver Zope erfreut sich als Open-Source-Plattform für Contentmanagement-Systeme großer Beliebtheit. Vor kurzem ist die von Grund auf neu entwickelte Version X3.0 des Python-Framework erschienen. Dieser Beitrag verrät, was sich geändert hat.

Spätestens seit Erscheinen des Contentmanagement-Systems (CMS) Plone[1] ist Zope ([2], [3]) aus der Welt der freien Web Application Server nicht mehr wegzudenken. Schon der Erfolg des Projekts zeigt, dass sich Zope durchaus mit Boliden aus der Java-Welt messen kann. Python als Programmiersprache der Zope-Welt sorgt für objektorientierten und modularen Quellcode. Weiterentwicklungen gehen damit so agil und flexibel vonstatten, wie man es sonst von Skriptsprachen des Web kennt.

Das CMF hilft bei der Neuentwicklung

Zope wird gerne als Plattform für CMS eingesetzt. Die meisten freien Zope-CMS (Plone[1], Silva[4], CPS[5]) benutzen das Content Management Framework (CMF). Dieses Produkt für Zope 2 brachte nicht nur die nötigen Werkzeuge für Contentmanagement-Systeme mit. Es war auch der erste Schritt in Richtung einer Komponenten-basierten Architektur. Technologien der Version 2 wie Zope Page Templates und die XML-Makrosprache TAL/METAL legen dafür den Grundstein.

Statt jedoch den verwinkelten Quellcode von Zope mühsam umzuschreiben, entschloss sich die Zope Corporation vor drei Jahren, den Neuanfang zu wagen. Die Erfahrungen aus der Entwicklung des CMF sollten in die Zope-Entwicklung einfließen. Da man sich längst dem Gedanken freier Software verschrieben hatte, stand das Projekt von Anfang an für die Community-Mitarbeit offen.

In großen und kleinen Entwicklertreffen (Sprints) auf der ganzen Welt entwickelten Zope-Erfahrene wie auch Neulinge die Software weiter. Bei der Qualitätssicherung halfen Methoden des Extreme Programming (XP), zum Beispiel Unit-Testing. Zudem konnten sich die Entwickler dank der bereits erfolgreichen stabilen Zope-Version 2 die Zeit lassen, gewisse Features in mehreren Iterationsschritten zu perfektionieren. Dabei waren sie sich nicht dafür zu schade, bereits geschriebenen Code wieder wegzuwerfen, um Funktionen anschließend besser zu implementieren.

Bessere Struktur durch Komponenten

Herzstück von Zope X3 ist die Komponenten-Architektur (siehe[6]). Sie setzt konsequent fort, was mit dem CMF begann - die Aufteilung der verschiedenen Zuständigkeiten (Datenspeicherung, Datenverarbeitung, Präsentation) auf zuständige Komponenten.

Die Objekt-Datenbank ZODB (Zope Object Database) ist schon aus Zope 2 bekannt. Sie erlaubt es, Objekte weitgehend transparent in der Datenbank zu persistieren, und zwar mit Enterprise-verdächtigen Features wie Transaktionen und Revisionierung sowie der Möglichkeit, verschiedene Storage Backends zu verwenden. Mit von ZEO (Zope Enterprise Objects) lassen sich sogar mehrere Zope-Instanzen zu einem Cluster zusammenfügen und so leicht skalieren.

Diesen Artikel als PDF kaufen

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook