Qooxdoo ( []; eigene Schreibweise: „qooxdoo“) ist ein clientseitiges Webframework für den Bau grafischer Benutzeroberflächen für Webanwendungen mit Hilfe des Programmierkonzepts Ajax. Die Quelltexte des Projekts sind frei und stehen unter der Eclipse Public License und der GNU Lesser General Public License.
Qooxdoo ist ein Framework für die Entwicklung von Anwendungen, die der Benutzer über seinen Webbrowser aufruft und bedient. Es stellt in einer Programmbibliothek zahlreiche auf der Skriptsprache JavaScript basierende Komponenten zur Verfügung, die Aussehen und Bedienung von Webanwendungen an klassische Desktop-Anwendungen angleichen. Dabei verwendet es das Programmierkonzept Ajax, das es erlaubt, Benutzereingaben zu verarbeiten, ohne die gesamte Webseite neu zu laden.
Der Name ist eine Verballhornung des Ausspruchs „guckst du“ in einem badischen Dialekt.
Eigenschaften Portabilität Diese Anwendungen laufen im Webbrowser und stehen somit dem Anwender auf allen Systemen zur Verfügung, auf dem ein von Qooxdoo unterstützter Webbrowsertyp vorhanden ist (u. a. Internet Explorer, Mozilla, Safari). Einfache Bedienung Die Anwendungen haben das von klassischen Desktopanwendungen gewohnte Look & Feel und sind daher für den Anwender leicht zu bedienen. Anpassbarkeit Die Entwickler können eigene Themes definieren und damit das Look & Feel geeignet für ihre Anwendung anpassen. Einheitlichkeit Die entwickelte Anwendung verfügt auf jedem gängigen Browser über ein einheitliches Look & Feel. Skalierbarkeit Entwickler können neue eigenständige Widgets entwickeln.
Die Ähnlichkeit zu klassischen GUI-Toolkits, wie Qt, Swing, MFC etc. besteht auch auf der Programmierebene, die Anwendungen werden aus Widgets zusammengestellt und mit Hilfe von Events gesteuert.
Geschichte Das Framework wurde von 1&1- und GMX-Mitarbeitern als Open-Source-Projekt gestartet.c’t Magazin 1/2009 S. 182 ff
Ein ähnliches Ziel, nämlich den Browser als GUI-Plattform zu verwenden, verfolgte bereits das Mozilla-Projekt mit seiner XUL-Technik, diese ist jedoch auf deren Browservarianten beschränkt.
Ähnlicher zu Qooxdoo ist das Dojo Toolkit, welches ebenfalls auf die Implementierung einer Cross-Plattform-GUI rein via JavaScript und DOM setzt.
Am 17. Dezember 2009 ist Qooxdoo in der Version 1.0 erschienen.
Einsatz Innerhalb der Rich Ajax Platform der Eclipse Foundation wird Qooxdoo als Rendering-Engine für die Implementierung des RWT-Toolkits verwendet. Dies ist als Pendant zu SWT gedacht, mit den gleichen Softwareschnittstellen, aber in Ajax-Technik für den Einsatz im Webbrowser realisiert. Der Entwickler braucht nur noch eine Quellcodeversion für beide Plattformen (Desktop und Webbrowser) zu erstellen und pflegen. Er entscheidet dann lediglich, für welche Plattform der Code generiert werden soll, die beträchtlichen Unterschiede zwischen beiden Plattformen werden durch die Frameworks und Toolkits verborgen.
Embarcadero Technologies setzt Qooxdoo als Rendering-Engine in seinem Produkt RadPHP (vormals ) ein.Neue Delphi-Versionen für Win32- und PHP-Entwicklung – Artikel bei Golem.de, vom 21. Februar 2007 (Abgerufen am: 22. Juni 2012)Siehe auch: und
Die Webmailer, für 1&1 DSL- und GMX Mail-Kunden, basieren auf Qooxdoo.
Der Web-Desktop eyeOS verwendet Qooxdoo für die Erstellung der grafischen Oberfläche.
Literatur Crane, Dave und Eric Pascarello mit Darren James: Ajax in Action, Manning, 2005 – Darstellung der Implementierungstechniken.
Weblinks Webpräsenz des Qooxdoo-Projektes Demonstration der Oberflächenelemente Eclipse Rich Ajax Platform Demo Browser zur Demonstration einiger Qooxdoo-Klassen Liste in der Realität eingesetzter Anwendungen API (Application Programming Interface)
Einzelnachweise
Kategorie:Freies Webframework Kategorie:JavaScript-Bibliothek