Wolfgang.Schmidetzki.Net

Fotos und mehr ...

XUL: das bessere HTML?

Schon von XUL gehört?
Ist nicht wirklich neu, aber ich muß zugeben, daß mir diese Technik erst vor einigen Monaten das erste mal aufgefallen ist.

XUL (gesprochen "suul") ist die (HTML-ähnliche) Sprache, mit der die komplette Benutzeroberfläche des Mozilla-Browsers geschrieben ist (der Browser selbst, der Newsreader, sämtliche Tools, ...). Und das Gute ist: XUL ist Bestandteil von Mozilla (bzw. allen Browsern mit Gekko-Engine wie Netscape, Firebird ... [Apple-user: gilt dies eigentlich auch für Safari?]) und kann für die eigene Anwendungsentwicklung verwendet werden.

In einem später folgenden Posting werde ich eine (meine) Beispielsanwendung im Detail beschrieben und zeigen, wie ich welche Probleme gelöst habe. Dieses spätere Posting wird in englisch sein, denn wer der englischen Sprache nicht mächtig ist, sollte ohnehin die Finger von XUL lassen...

XUL das bessere HTML?

XUL ist XML - also "nur" eine Sammlung von Tags und Attributen, die man intelligent aneinanderreihen muß. Nicht schwerer als HTML. Man kann XUL-Dateien genauso wie HTML-Dateien im (richtigen) Browser aufrufen - der Browser rendert das XUL zu einer sehr(!) ansprechenden "echten" Benutzeroberfläche.

XUL beherscht u. A.:

  • List Controls
  • Tree Controls
  • Menüs (inkl. Popup-Menüs)
  • Toolbars
  • Tab-Pannels
  • Wizzards
  • Progress Meters
  • Color Selector
  • Drag & Drop
  • Dialoge
  • Stacks und Decks (so etwas wie Layer in HTML)
  • ...

Es ist sogar möglich, den "Composer" z. B. als "Rich-Text-Editor" in eigenen Anwendungen zu verwenden. Und alle Controls sind über JavaScript und einem Eventmodell steuerbar.

Noch nie gesehen? Mozilla-User klicken hier (mein erstes XUL-Programm).
Nich überzeugt? Dann veilleicht dieses.

Nein, XUL ist nicht das bessere HTML. XUL hat einen anderen Focus. Wärend HTML zur Präsentation und Verlinkung von Inhalten geschaffen wurde, dient XUL zur Schaffung von Benutzeroberflächen. Aber man kann beides perfekt miteinader verbinden (wenn man bereit ist, IE-User auszuschließen).

Dies gilt insbesondere dann, wenn (D)HTML an seine Grenezen stößt, und dies ist z. B. in vielen Arten von Portalen der Fall.
Gutes Zitat von Harry Fuecks:

writing an application in XUL is like writing a Web page with DHTML, except that your XUL application will work, while your DHTML might....

Ich verstehe nicht, wie ein GUI-verwöhner Mensch mit heutigen Mitarbeiterportalen glücklich sein kann und dies nicht als Rückschritt ins Terminalzeitalter empfindet.

Ein XUL-Portal könnte gerade in Zusammenarbeit mit HTML eine interessante Alternative sein, ohne das man das Browser-Only-Client-Konzept dabei verlassen muß (immer vorausgesetzt, man spricht vom "richtigen" Browser).

XUL kann von jedem HTML-Designer verstanden und umgesetzt werden. Alles was man braucht ist der Umgang mit Tags und JavaScript. Ein Grund, warum sich die Technologie nicht so recht verbreitet, ist aber möglicherweise die sehr mäßige Dokumentation. Es kann sehr frustrierend sein, wenn man für eine Zeile Code mehere Stunden recherchieren muß.

Mein Tipp: nicht aufgeben, viel lesen, noch mehr fragen und folgende Hinweise beachten:

Was definitiv jeder lesen muß, ist das XUL-Turorial von Niels Deakin. Das Tutorial ist Teil der Website XULPlanet, die als Ganzes lesenswert ist. Die Site enthält auch ein lesenswertes Forum, in dem unbedingt Fragen gestellt werden sollten, bevor Frust entsteht.

Fragen stellen und beantworten (oder auch nur lesen) kann man auch in der newsgroup netscape.public.dev.xul.

Ein Interessanter Artikel zu XUL stammt von Harry Fuecks auf sitepoint.com.

Zu irgendeinem Zeitpunkt habe ich mit das O'Reilly-Buch "Creating applications with Mozilla" besorgt. Als Buch hat es Vorteile gegenüber der Onlinerecherche (man kann es auch im Flugzeug lesen), erklärt einige Konzepte ausführlicher als die Webseiten (z. B. was eigentlich RDF ist) - insgesamt ist es aber doch eher oberflächlich. Andererseits müßte ein nicht-oberflächliches Buch sicherlich >1000 Seiten haben ...

Einige Informationen findet man auch direkt bei Mozzilla.org, z. B. hier. Aber zu viel sollte man sich nicht davon versprechen.

XUL arbeitet intensiv mit RDF-Datenstrukturen (Resource Description Framework). Informationen zum (wichtigen) Thema RDF findent man hier und hier (beide Links auf mozilla.org).

Kommentare:

comment von Stefan Tilkov 00:50 Uhr MEZ

Safari auf dem Mac benutzt als HTML-Rendering-Engine KHTML (den Kern vom Linux/KDE-Browser Konqueror).

comment von C]-[aoSlayeR 03:52 Uhr MESZ

Die Implementierung der Gecko-Engine für den Mac heißt Camino. Zwar
gibt es auch eine Mozilla Suite für Mac OS, allerdings geht Camino
einen etwas anderen Weg und macht direkten Gebrauch der Mac OS
X-typischen Eigenschaften.

Bitte geben Sie hier Ihren Kommentar ein:

Verwende Markdown Syntax

Twitter

Powered By

  • OpenWGA Blogs 2.3.2 Build 128
    Running on:
    OpenWGA Server 7.0.14 Maintenance Release (Build 641)
    www.openwga.com