AJAX

Aus MedienWiki

Wechseln zu: Navigation, Suche

Das Kürzel AJAX steht für Asynchronous JAvascript+XML und beschreibt ein (relativ) neues Applikationsmodell für Web-Anwendungen.

Inhaltsverzeichnis

Definition

Ajax stellt keine einzelne neue Technologie dar, sondern ist die Verbindung verschiedener mehr- oder weniger innovativer Techniken. Dazu gehören zum Beispiel:

Dabei muss nicht jeder AJAX-Dienst jede dieser Techniken verwenden - ähnlich wie beim Begriff des Web 2.0 handelt es sich bei AJAX eigentlich "nur" um ein neues Konzept, das auch auf alte Erfahrungen und Techniken zurückgreift.

Funktionsweise

Fehler beim Erstellen des Vorschaubildes: /var/www/htdocs/luhmann/bin/ulimit4.sh: line 4: /usr/bin/convert: No such file or directory

Elementarer Bestandteil des AJAX-Konzeptes, das erstmalig von Jesse James Garett postuliert wurde, jedoch auf längst bekannte Techniken zurückgreift, ist eine Veränderung des "Application Models" im Web - also die Art, auf die Web-Anwendungen aufgebaut sind.


Während bei normalen Web-Applikationen nur zwei Instanzen miteinander agieren - der User (mit seinem Webbrowser) und der Server (mit der entsprechenden Software), kommt bei AJAX noch eine Ajax-Engine ins Spiel, die zwischen Benutzer und Server vermittelt. Dabei kann die AJAX-Software zum Beispiel schon die nächste Datei vom Server laden, während der User selbst noch gar nicht daran gedacht hat. Die üblichen Wartezeiten beim Aufruf einer neuen Webseite sollen so verringert oder sogar eliminiert werden. Außerdem ist es die AJAX-Engine, die die Präsentation (Rendering) der eigentlichen Daten übernimmt - es müssen also nur die wirklich relevanten Informationen vom Server übermittelt werden. Die Software kann dabei einfache Aufgaben ganz ohne Hilfe des Servers übernehmen. Weiterhin muß die Seite nicht für jede Änderung komplett aktualisiert werden.


Möglichkeiten im Web 2.0

Ajax soll im Idealfall flexible, schnelle und leicht benutzbare Internetdienste ermöglichen. Ajax-Anwendungen verknüpfen verschiedene Datenquellen des Internets miteinander und bereiten diese dynamisch für den Benutzer auf. Daten können verändert werden, ohne dass die gesamte Website erneut geladen werden muß. Damit gilt Ajax als wichtiger Baustein für ein personalisiertes, flexibles und vernetztes Web 2.0. Programme, die auf Ajax zurückgreifen, erleichtert Social Navigation, deshalb wird die Technik auch im Erstellen von sogenannter Social Software verwendet. Zu den von AJAX-Anwendungen verwandten Techniken gehört auch das Tagging.



Beispiele

Obwohl Ajax schon länger als "Buzzword" durch das Web geisterte, gibt es schon viele Internetdienste, die davon gebrauch machen.

Google Maps/Google Local

Google Maps (Google Local) verknüpft eine interaktive Karte, Sattelitenfotos, eine Navigationssoftware und die Google-Suche in einer einzigen Applikation. Sucht man zum Beispiel nach der Space Needle, so findet Google Maps alle Suchergebnisse in Seattle, die zum Suchbegriff passen und zeigt diese auf einer frei beweglichen Karte an. So lassen sich zum Beispiel auch Restaurants in einer bestimmten Gegend finden. Außerdem können Wegbeschreibungen von einem Punkt zum nächsten benutzt werden. Dabei greift der Google-Maps-Client auf Ajax zurück, um diese Informationen zu verbinden.

bild:google_moon.jpg

Als mustergültiges Beispiel für Web 2.0-Applikationen wurde Google Maps nicht nur für alle möglichen Zwecke portiert (zum Beispiel fürs Handy): Auch die Webgemeinde hat sich mit bestimmten "Hacks" daran gemacht, die Funktionen von Google Maps weiter auszuweiten - beispielsweise lassen sich alle Notrufe der Feuerwehr von Seattle mehr- oder weniger live auf einer Website betrachten. Technisch greift Google Maps vor allem auf Javascript und XML zurück und ist somit ein gutes Beispiel für eine AJAX-Anwendung. Nicht nur in Deutschland funktioniert Google Maps inzwischen (allerdings nur mit Sattelitenfotos, ohne Straßenkarten und Suchergebnisse), auch auf dem Mond lässt sich mit Google Maps suchen.

Weitere Beispiele

bild:FlickR.jpg

Kritik

Zurück-Button und Lesezeichen

Weil die AJAX-Software den Inhalt der Seiten ändert, ohne dass diese neu vom Server geladen werden, sind Internetbrowser meistens ziemlich verwirrt. Der Zurück-Knopf funktioniert deshalb bei AJAX-Anwendungen nicht immer reibungslos. Auch Lesezeichen, die auf von AJAX dynamisch generierte Seiten verweisen, funktionieren bei anderen Benutzern nicht mehr. Manche sehen deshalb durch Ajax grundlegende Prinzipien des Internets ausgehebelt - gerade das Springen zwischen Seiten gilt als großer Vorteil.

Latenzzeit

Je nach Software und Internetverbindung können AJAX-Programme träge reagieren, weil sie den Server oft auch für marginale Änderungen kontaktieren müssen.

Marketing-Missbrauch

Kritiker sind der Meinung, dass Ajax keine wirklich neue Idee ist, sondern nur ein von J. J. Garrett eingerichteter Marketingcoup seiner eigenen Agentur. Tatsächlich ist die Definition, was Ajax denn eigentlich ist, eher schwammig - ähnlich wie bei Web 2.0 beschreibt Ajax eher eine Idee als deren konkrete Umsetzung. Wie auch bei Web 2.0 gibt es inzwischen kaum noch Webdesigner, die ohne den Hinweis auf Ajax auskommen.

Quellen

(1) Jesse James Garrett: "A new Approach to Web Applications" (Feb 05).

(2) Trevor Lowing: "Ajax - Behind the Buzzword"

(3) Alex Bosworth "10 Places You Must Use Ajax" (Dez 05)

(4) Wikipedia: Ajax

Persönliche Werkzeuge