Qooxdoo vorgestellt

Teil 2: Workshop Javascript-Framework: Qooxdoo

Konsolenarbeit

In vielen Dingen geht Qooxdoo andere Wege als andere populäre Javascript-Frameworks. Einer dieser Unterschiede ist die Nutzung von Batch-Skripten während der Entwicklung. Das Framework bringt eine Reihe von Python-Skripten mit, die wiederkehrende Aufgaben automatisieren und vereinfachen.

Ähnlich wie bei Webframeworks (wie Rails oder Symfony) kommt hier der Konsole während der Anwendungsentwicklung eine gesteigerte Bedeutung zu. Aus diesem Grund ist auch eine Python-Installation auf dem Entwicklungsrechner notwendig, da alle Skripte in dieser Sprache realisiert sind. Eines davon wird beispielsweise für die Erstellung der Anwendungsgrundstruktur genutzt. Diesem Skript wird ein Anwendungsname und ein Zielverzeichnis angegeben.

C:\Qooxdoo-0.8.2-sdk\tool\bin\
create-application.py --name=hallowelt --out=C:\Qooxdoo

Dieser Befehl erstellt eine neue Anwendung mit dem Namen hallowelt im Verzeichnis c:\Qooxdoo\hallowelt.

Wenn Sie einen Blick in dieses Verzeichnis werfen, werden Sie feststellen, dass dieser Befehl eine ganze Reihe von Verzeichnissen und Dateien angelegt hat. In dieser Verzeichnisstruktur finden im Laufe der Entwicklung einer Qooxdoo-Anwendung alle Daten ihren Platz. So gibt es beispielsweise ein Verzeichnis für Klassen, eines für Übersetzungen und eines für Ressourcen, wie beispielsweise Bilder. Die Projektstruktur bietet die Grundlage für die weitere Entwicklung der Javascript-Anwendung.

Widgets

Bei webbasierten Anwendungen liegt ein Hauptaugenmerk in der Entwicklung der Benutzeroberfläche. Hierfür kommen Widgets wie Bäume, Tabs, Menüs, Buttons, Eingabefelder und vieles andere mehr zum Einsatz. Qooxdoo bringt eine große Menge an Widgets mit, die sich sehr einfach nutzen lassen. Da das Framework objektorientiert entwickelt ist, ist die verwendete Syntax zur Erstellung von GUI-Elementen gut verständlich.

Das folgende Beispiel zeigt die Erstellung eines Buttons innerhalb eines Javascript-Fensters.

var win = new qx.ui.window.Window
("First Window");
win.setLayout(new qx.ui.layout.
VBox());
win.setWidth(300);
win.set
Height(200);
win.
setShowMinimize(false);
this.getRoot().
add(win, {left:20, top:20});
var btn1 = new
qx.ui.form.Button('Klick mich', '');
win.add(btn1);
win.open();

Auf diese Art und Weise wird in einem Qooxdoo-Projekt die gesamte Anwendung entwickelt. Durch die reichhaltige Auswahl an Widgets ist dies mit sehr wenig Aufwand erledigt und erste Ergebnisse können so viel schneller und einfacher erreicht werden.

Layouting

Eine der schwierigsten Aufgaben, die sich im Laufe der Entwicklung von Webanwendungen stellt, ist das Layouten der Fenster, Dialoge und Widgets.

Während es bei Webseiten durchaus vorteilhaft und akzeptabel sein kann, die Seite und einzelne Bereiche mit einer festen Größe zu versehen, ist dies bei desktopnahen Anwendungen eher nachteilig. Hier erwartet der Benutzer, dass sich Bereiche und Fenster an eigene Bedürfnisse oder Bildschirmgrößen anpassen lassen.Auch zur Lösung dieses Problemes bietet Qooxdoo eine Lösung. Verschiedene Layout-Container bieten die Möglichkeit, Inhalte automatisch anzuordnen. Eine Menge fertiger Layout-Container wird bereits mitgeliefert und können direkt eingesetzt werden.

Javascript-Frameworks

© Archiv

Die Kommandozeilentools von Qooxdoo übernehmen lästige Routinearbeiten, wie beispielsweise die Erstellung eines Projektgrundgerüstes.

Darunter befinden sich auch einige, die vom Benutzer in ihrer Größe verändert werden können. Alle Container bieten die Möglichkeit, sich an die Fenster-Größe anzupassen und auch ein Scrolling für die Inhalte automatisch einzublenden, wenn dessen Größe die des Containers übertrifft. Das folgende Listing zeigt die Nutzung eines Container-Elementes (in diesem Fall eines Canvas), dem ein Element zugeordnet wird.

var canvas = new qx.ui.container.
Composite(new qx.ui.layout.Canvas);
canvas.add(new qx.ui.form.
Button("Hallo Welt"), {
left : 20,
top: 20
});

Mehr zum Thema

Youtube Sperre umgehen GEMA
Videos freischalten

So umgehen Sie die GEMA-Sperre bei Youtube. Was Sie dazu brauchen, und wie es am einfachsten geht.
Neue Fritzboxen unterstützen den AC-Standard.
WLAN-Geschwindigkeit verdoppeln

Mehr WLAN-Geschwindigkeit: Mit dem WLAN-Standard 802.11ac und den richtigen Geräten und Einstellungen verdoppeln Sie den Datendurchsatz.
Netflix auf dem TV
Programm in der Übersicht

Welche Filme und Serien gibt es bei Netflix eigentlich zu sehen? Was ist neu im Streaming-Angebot? Diese Antworten helfen weiter.
Netflix
Streaming

Preise, kompatible Geräte, Datenrate, Serien- und Filmangebot von Netflix: Wir beantworten die wichtigsten Fragen rund um den Streaming-Dienst.
E.T. – Der Außerirdische
Vorschau auf Film- und Serien-Highlights

Amazon Prime Instant Video lockt im Dezember 2016 mit Film-Highlights wie "E.T.", "Fast & Furious 7" und der Serie "Ku’damm 56​".