RIA-Technologie: Ajax

Kurzvorstellung

Bei Ajax handelt es sich in den Augen vieler um eine RIA-Technologie. Ajax läuft auf allen aktuellen Browsern mit angeschaltetem Java-Script und kommt ohne Plugin aus. Ursprünglich meinte Ajax nur “Asynchronous JavaScript and XML” und beschreibt ein Verfahren, mit dem man Daten oder Elemente einer Webseite aktualisieren kann, ohne die Seite komplett neu zu laden.

Mittlerweile hat sich Ajax aber als Begriff für ein viel weiteres Spektrum an Funktionalitäten etabliert. Das, was sich vor ein paar Jahren DHTML (Dynamisches HTML) nannte ist ebenso Bestandteil des Ajax-Phänomens geworden wie alternative Datenaustauschformate zu XML (etwa die “Java-Script Object Notation” Json). Ajax besteht aus einem Patchwork an Technologien: Java-Script, XML, XHTML, CSS und einer Backendtechnologie, die die benötigten Daten von den Servern liefert.

Um die recht mühsame Ajax-Programmierung zu erleichtern haben sich etliche sehr gute Libraries gebildet, die von reiner Bereitstellung von Funktionalitäten hin zu Animationen etc. ein breites Spektrum abdecken. Ein paar gelungene Beispiele dieser Bibliotheken sind ExtJS, JQuery, Scriptaculous und Dojo-Toolkit.

Was die Entwicklung erschwert ist das Problem, dass sich Ajax-Anwendungen auf vielen Browsern unterschiedlich verhalten und so ein vergleichsweise höherer Entwicklungs- und Testaufwand zu berücksichtigen ist.

Vor- und Nachteile

Die Nachteile von Ajax liegen primär in der Grundlage der verwendeten Technologien begründet, namentlich ist besonders Java-Script zu nennen:

  • Recht schwache Performance bei aufwändigen Operationen mangels zeitgemäßer VM / Laufzeitumgebung
  • Keine browserübergreifende Unterstützung für Vektorgrafiken und darauf basierenden Animationen
  • Umständliches Entwicklungsmodell
  • Schwer erreichbare Nutzung der “Zurück-Taste” des Browsers
  • Kaum vorhandene Unterstützung für Multimedia

Zu den Vorteilen zählt:

  • Keine Installation eines Plugins
  • Flache Lernkurve aufgrund zumeist bekannter Technologien für Webentwickler
  • Leichte Dynamisierung von statischen HTML-Seiten, ideal für Mashups
  • Vielfalt an Backend-Technologien

Toolsupport

Auch wenn es mehrere Angebote gibt, um Ajax zu entwicklen, gibt es nicht die Ajax-IDE. Besonders zu nennen wäre Aptana, eine auf Eclipse aufsetzende IDE, die einen recht guten Support für Ajax-Entwicklung bietet. Werkelt im Backend eine Java-Anwendung, kann man auch MyEclipse nennen, das einen guten Ajax-Support bietet.

Durch den Mix an Technologien (und der verwendeten Technologien) ist der Toolsupport generell nicht so gut, wie etwa der von Flex oder Silverlight, die ein einheitliches Entwicklungsmodell bieten.

Beispiele

Das Web ist voller Beispiele von Ajax. Das reicht vom Suchfeld in diesem Blog bis hin zu großen Portalseiten wie iGoogle oder Netvibes. An bekannten, allen zugänglichen Anwendungen wären etwa Googlemail oder Google Docs zu nennen. Als Informationsquelle für Ajax dient der Aggregator von Ajaxian. Auch der Enterprise-Markt hat Ajax entdeckt und bringt mit Lösungen wie Backbase Ajax in den Bereich der Unternehmenssoftware.

Bewertung

Es mag umstritten sein, ob Ajax wirklich zu den RIA-Technologien zählt, aber es ist bereits vieles damit möglich. Und zweifelsohne hat Ajax das Web belebt, viele Seiten sind nutzerfreundlicher und interaktiver geworden. Doch Ajax hat seine Grenzen wenn es um die Darstellungsfähigkeit und den Medieneinsatz geht, zwei Kernelemente von RIAs. Auch die Performance von Ajax ist weit hinter der von Plugin basierten Technologien, auch wenn mit Tamarin eine neue Laufzeitumgebung am Horizont erscheint.

0 Antworten zu “RIA-Technologie: Ajax”


  1. Keine Kommentare

Eine Antwort hinterlassen