Sonntag, 12. Februar 2012 |
Ajax-Widgets sind die neuen Zauberbausteine, mit denen GUI-Konsumenten das Web auf schmackhafte Weise serviert wird: Warenkörbe können vom User dank Drag & Drop intuitiv befüllt werden, Bedienfehler sind quasi ausgeschlossen - und das Bezahlen macht dank peppigem GUI vielleicht sogar Spaß. Wenn Sie Ihre Webapplikation auf ähnliche Weise "tunen" wollen, stehen Ihnen eine Vielzahl von Anlaufstellen zur Verfügung. Eine der wichtigsten Seiten ist dabei sicherlich ajaxian.com. Die Seite präsentiert News rund um das Thema Ajax, Schwerpunkt bilden dabei Ajax-Entwicklungstechnoolgien. Täglich werden hier neue JavaScript-Bibliotheken und Frontend-Hacks vorgestellt, die es Ihnen ermöglichen, Ajax in Ihre Webapplikation zu holen.
Vor allem Widgeting
Leider wird an dieser Stelle deutlich, dass Ajax momentan in erster Linie aus "Widgeting" besteht, sprich: Man nehme eine bestehende Applikation, integriere einige JavaScript-Bibliotheken, um dann beispielsweise von Drag & Drop zu profitieren. Der Kern der Applikation bleibt dabei allerdings eine Webapplikation, man ist weit entfernt vom Rich Client im Browser; dabei gibt es doch genügend Killer-Apps, welche zeigen, was möglich ist, wenn man Ajax wirklich voll ausreizt. Nehmen Sie die das Web Interface eines E-Mail-Client, ein klassisches Beispiel für einen Rich Client im Browser, der es ermöglicht innerhalb des GUI mehr zu arbeiten als zu spielen. Ajax wird an dieser Stelle sowohl verwendet, um komplexe Frontend-Controls zu erzeugen, aber auch um die Kommunikation zwischen Client und Server basierend auf XMLHttpRequest & Co. schlank zu halten. Folglich stellt sich die Frage, warum lediglich die "großen Player" (z.B. E-Mail-Provider) die Ajax-Technologie so verwenden, dass diese als wirkliche Alternative zum Rich Client bezeichnet werden kann - denn ein Drag & Drop-Einkaufskorb ist zwar schön anzusehen, hat aber mit dem Begriff des Rich Client kaum Berührungspunkte.
Wo sind die Killer-Apps?
Die Ursachen für den Mangel an Killer-Apps liefern uns Seiten wie ajaxmatters.com: Ajax wird zwar im Frontend von klugen Köpfen und deren JavaScript-Bibliotheken kräftig vorangetrieben, "nach hinten" raus fehlt allerdings die Unterstützung, und der Entwickler muss noch eine weitere Technologie (Servlets, Struts etc.) einbinden. Ketzerisch gesagt stehen wir momentan genau an dem Punkt, der bei Java EE-Applikationen oft als Manko aufgeführt wurde: An die Stelle von HTML als Bremsklotz bei der Entwicklung von Webapplikationen ist JavaScript getreten! Zudem entstehen Mashups im negativen Sinn, denn oftmals müssen JavaScript-Bibliotheken unterschiedlicher Hersteller eingebunden werden. Nehmen wir den E-Mail-Client als Beispiel: Sie benötigen einen Baum für die Abbildung der einzelnen Mail-Folder? Verwenden Sie dojo. Für die übersichtliche Darstellung der E-Mails können script.aculo.us-Tabellen eingesetzt werden. Sie wollen "Tabbed Panes"? Setzen Sie Tibco ein usw. Ganz klar muss die Applikation entsprechend intensiver getestet werden, denn niemand kann Ihnen garantieren, dass das gewählte Tabellen-Widget auch noch mit mehr als 100 Datensätzen sortierbar ist. Ist der Preis, den wir für Ajax bezahlen müssen, somit ein erhöhter Entwicklungsprozess bei Webapplikationen?
Das Pferd von hinten aufzäumen
Was ist also die Quintessenz? Zäumen Sie das Pferd von hinten auf: Konzentrieren Sie sich darauf, ein Ajax-Framework zu beherrschen, um damit die Grundlage für Ihre Applikation zu entwickeln. Wenn Sie darüber hinaus zusätzlich Bausteine im Frontend benötigen, können Sie dann immer noch auf eine Vielfalt ausgefeilter Ajax Widgets zugreifen - aber JavaScript sollte immer nur Mittel zum Zweck sein und nie der Kern Ihrer Applikation!
Florian Müller arbeitet als Consultant für die Firma Cambridge Technology Partners, Schweiz. Sowohl beruflich als auch privat gilt sein Hauptinteresse der Entwicklung von Webapplikationen basierend auf dem Ajax-Ansatz.