qooxdoo – Wegweiser für Entwickler von Rich Internet Applications

qooxdoo ist ein in Deutschland entwickeltes Java-Script-Framework. Die Zielgruppe sind Entwickler von Rich Internet Applications (RIA) und browsergestützen Web- bzw. Intranet-Anwendungen. Für diese Arten von Anwendung zählt qooxdoo zu den führenden Systemen. Die Agon Solutions stellt für die Entwickler einen Webweiser auf, der die wichtigsten Merkmale dieses innovativen Werkzeugs aus der Praxis für die Praxis aufzeigt.

 

qooxdoo für anspruchsvolle Benutzerschnittstellen

qooxdoo ist ein Framework zum Erstellen von Rich Internet Applications. qooxdoo ist ausschließlich in JavaScript geschrieben. Es benötigt keine Plugins wie Adobe AIR oder einen speziellen Compiler wie Googles GWT. Auf Grundlage der objektorientierten Fähigkeiten von JavaScript ist mit qooxdoo ein vollständig klassenbasiertes, äußerst leistungsfähiges Entwicklungssystem entstanden, das bei der Gestaltung anspruchsvoller Benutzerschnittstellen oder der Programmierung ausgefeilter Client-Server-Kommunikation kaum Wünsche offen lässt.
 

Die Hauptmerkmale von qooxdoo

Initiator von qooxdoo (gesprochen: "guckst du") ist der Internet Service Provider 1&1. 1&1 veröffentlichte qooxdoo 2005 als Open Source Projekt unter der Eclipse Public License (EPL) und GNU Lesser General Public License (LGPL). qooxdoo ist auf die Erstellung von grafischen Benutzeroberflächen (GUIs) ausgelegt. Die einzelnen GUI Komponenten kommunizieren ereignisgesteuert (event driven) miteinander. Das macht die Erstellung auch von komplexen GUIs recht einfach möglich. qooxdoo ist eine komplette API zum Erstellen von Webseiten. Es geht damit weit über das hinaus was JavaScript-Toolkits leisten, die nur HTML-basierte Webseiten erweitern.

 

Die Architektur von qooxdoo

 

qooxdoo Wegweiser

 

  • Die sog. Core-Schicht von qooxdoo liefert die Grundlagen des Frameworks. Hier wird z. B. das qx.core.Object definiert, das die Basisklasse fast aller übrigen qooxdoo-Objekte darstellt; auch das qooxdoo-eigene Event-System hat hier seinen Ursprung.
  • Über diesem Kern ist eine Browser-Abstraktionsschicht angesiedelt, die u.a. das DOM (Document Object Model) abbildet und für die Server-Kommunikation zuständig ist.
  • In der Low-Level-Schicht sind alle Basisfunktionalitäten für die Bildschirmausgabe gekapselt, dazu gehören beispielsweise Objekte für die DOM-Manipulation und verschiedene HTML-Elemente (Input, IFrame usw.).
  • Die GUI-Schicht besteht wiederum aus einem Kern mit grundlegenden UI-Objekten und entsprechender Infrastruktur (Queues, Event Handling) sowie den darauf aufbauenden Top-Level-Widgets (Button, ComboBox, TabView usw.), dem Layout-System und den Theming-Mechanismen.

 

Die Entwicklung von qooxdoo Programmen

Als qooxdoo-Entwickler ist man üblicherweise nur mit den oberen beiden Schichten des Modells konfrontiert. Der große Vorteil: man braucht sich nicht mit Details des DOM oder mit CSS und HTML auseinanderzusetzen. Hat man die unvermeidliche Einarbeitungsphase hinter sich gelassen, offenbart sich ein sauber implementiertes Konzept, das sich in der Praxis als äußerst stabil und zuverlässig erweist. Wer sich mit anderen OO-Sprachen wie Java, C++ oder Delphi auskennt, wird kaum Probleme haben, die qooxdoo Klassenbibliothek zu durchschauen, mit ihr zu arbeiten und sie bei Bedarf auch zu erweitern. Zum Erstellen eines qooxdoo Programms sind weder HTML- noch CSS- oder DOM-Kenntnisse notwendig. Das Beste ist aber, dass man sich nicht mit den „Browser Eigenheiten" beschäftigen muss. qooxdoo sorgt dafür, dass die GUI auf allen Browsern gleich aussieht und sich gleich verhält.

 

Unterstützung durch das Framework:

  • Erzeugung der notwendigen Infrastruktur eines qooxdoo Projektes quasi auf Knopfdruck, per Python-Skript
  • Verständliches Benutzerhandbuch mit allen relevanten Aspekten der qooxdoo Programmierung inklusive eines ausführlichen Tutorials
  • API-Viewer mit Zugriff auf die umfassende Dokumentation der Klassenbibliothek
  • Demo-Browser mit vielen Beispielprogrammen (Erkenntnisse & Inspirationen)
  • Kontakt per Mailing-Liste in das qooxdoo Entwicklerforum mit Supports & Antworten binnen weniger Stunden auf fast jede Frage

 

Fazit für den qooxdoo Entwickler

Die Entwicklung mit qooxdoo macht einfach Spaß.
Nach den ersten Einstiegshürden kommt man innerhalb kürzester Zeit zu vorzeigbaren Ergebnissen.
Haben wir Sie neugierig gemacht? Weitere Details zu qooxdoo finden Sie in unserem detaillierten Wegweiser „Rich-Internet-Entwicklung mit qooxdoo".
Bei Projektanfragen können Sie gerne auch direkt Kontakt mit der Agon Solutions über it-solutions@agon-solutions.de aufnehmen.

Fragen Sie unseren Experten

Martin Kämmerer
Projektmanager, Bereichsleiter
it-solutions@agon-solutions.de


Whitepaper