Deklarative UI-Entwicklung mit XML: Neues Projekt Eclipse XWT vorgeschlagen

Hartmut Schlosser

Die Entwicklung von User Interfaces ist keine triviale Angelegenheit – im Gegenteil: Ein ansprechendes UI mit einer guten User Experience entscheidet oft über Erfolg oder Mißerfolg eines Projektes. Kein Wunder, dass die Anzahl der Hilfmittel, Tools und Frameworks zum UI-Building riesig ist. Ein weiteres solches Framework wurde nun als neues Eclipse-Projekt vorgeschlagen: XWT. Welche Daseinsberechtigung hat XWT?

XWT steht für „XML Windowing Toolkit“ und ist ein Werkzeug zur deklarativen UI-Entwicklung in XML für Eclipse-Plug-ins und RCP-Anwendungen. Gegenüber der UI-Programmierung in Java, die hohe Anforderungen an Entwickler mitbringt, von sich aus keine Trennung von UI und Business-Logik bietet und nur begrenzten dynamischen UI Support bringt, bietet die deklarative UI-Definition von Natur aus eine Abstraktion und Trennung von UI-Konzept und seiner Implementierung.

XWT will nun die ursprüngliche Idee von XML, der Datenaustausch zwischen Computersystemen, auch für das User Interface zugänglich machen. XWT stellt ein API zur Verfügung, mit dem eine Oberfläche zur Laufzeit zusammengebaut und angezeigt wird. Darüber hinaus sorgt XWT für das reibungslose Zusammenspiel zwischen Oberfläche und der Ausführung von Java-Code, z. B. beim Auftreten von Events oder beim Data Binding. Aktuell ist XWT an SWT, JFace und JFace Data Binding angebunden, legt sich aber ganz bewusst nicht nur auf diese Technologien fest, sondern stellt Schnittstellen bereit, mit denen auch andere Bibliotheken angebunden werden könnten.

Vorteile einer solchen Lösung sind beispielsweise:

  • Weniger technisches Vorwissen für die UI-Entwicklung nötig
  • Ein echtes wiederverwendbares Komponentensystem mit einer sauberen Architektur
  • Flexible Gestaltungsmöglichkeiten bei der Definition einer Domain Library
  • Flexible Lösung für Datenpräsentationen
  • Weitreichende Integration mit allen existierenden Eclipse-Umgebungen und Frameworks
  • Eine gute Grundlage für die Entwicklung erweiterter Werkzeuge wie WYSIWYG Designer, MDA usw.

XWT ist im Kontext des e4-Projektes entstanden, aus dem auch die Plattform Eclipse 4.x hervorgegangen ist. Im e4-Incubator experimentiert die Eclipse-Community schon seit mehreren Jahren mit neuen Ansätzen, die auf die neue Plattform zugeschnitten sind. So manches Projekt hat es bisher aus dem Incubator in den Mainstream geschafft – beispielweise die erweiterte Dateiverwaltung und das Styling via CSS. XWT will es diesen Projekten nun gleich tun und bemüht sich um die Aufnahme in den Kanon der offiziellen Eclipse-Projekte.

Hinter dem Projekt steht das Unternehmen Soyatec, mittlerweile haben sich aber auch weitere interessierte Player angeschlossen, darunter Google, Thales und CEA. Geplant ist eine schnelle Integration in den Eclipse 4.3 Release-Zyklus, was angesichts des Ursprungs von XWT im e4-Incubator nicht allzu schwierig sein dürfte. Ein erstes Community-Release soll im Herbst 2012 kommen. Das finale Release hat Eclipse Kepler im Juni 2013 zum Ziel.

Hat Sie diese Vorstellung überzeugt? Brauchen wir ein weiteres UI-Toolkit auf Basis von XML? Wenn Sie diese Frage bejahen, dann schauen Sie sich das Projekt doch einmal genauer an – und vielleicht werden Sie ja bald selbst XWT-Committer?

Geschrieben von
Hartmut Schlosser
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.