Ajax / Vorteile & Abgrenzung

© 2006 Tim Baumgarten


[Inhaltsverzeichnis][Zurück: Funktionsprinzip][Weiter: Kritische Aspekte]

Vorteile

Noch ist Ajax in größeren Webprojekten eher selten anzutreffen, doch sprechen einige gute Gründe dafür, dass sich dies ändern wird.

Die Vorteile gegenüber anderen Lösungen sind unter anderem:

Was Ajax noch fehlt, ist eine stärkere Abgrenzung von anderen Ansätzen sowie ein einheitliches Verständnis des Begriffs.

Abgrenzung

Web 2.0

Zwar ist Ajax aus technischer Sicht eine Art Bestandteil von Web 2.0, diese zwei Begriffe sollte aber nicht undifferenziert miteinander vermischt oder verwechselt werden.
Web 2.0 ist ein Oberbegriff für bestimmte Philosophien und Ansätze bei deren Umsetzung Ajax immer mehr zum Tragen kommt.

DHTML

DHTML steht für Dynamic HTML und bezeichnet das nachträgliche Ändern der DOM Baumstruktur und damit der Darstellung mit Hilfe einer Skriptsprache, zumeist Javascript.

Vieles was als DHTML längst bekannt ist, wird heute fälschlicherweise mit dem Namen Ajax in Verbindung gebracht. Diese Verwechslung ist darauf zurückzuführen, daß DHTML seit jeher einen schlechten Ruf hat, die ermöglichten Funktionen aber, aufgezeigt in neuen Ajax-Anwendungen, Viele begeistern können.

Die Schnittmenge zwischen Ajax und DHTML liegt in der nachträgliche Änderung der DOM Struktur, das Ziel unterscheided sich jedoch. Das Dynamic steht bei DHTML für das Andern der Präsentation einer Webseite während es bei Ajax um die Aktualisierung des dargestellten Inhalts selbst geht. Trotzdem sind hier die Übergänge fließend.

Letzendlich benutzt man in den meisten Fällen Ajax zusammen mit DHTML.

Remote Scripting / Inlineframes

Ein Inlineframe erlaubt es in ein HTML-Dokument andere HTML-Dokumente einzubinden. Im Gegensatz zu normalen Frames werden Inlineframes aber meistens nicht zur Unterteilung einer Webseite benutzt sondern dazu Inhalte anderer Webseiten z.B. Werbung anzuzeigen.

Da es einerseits möglich ist den Inhalt eines Inlineframes per JavaScript zu manipulieren ohne die einbindende Seite neuzuladen und sich andererseits iframes auch verstecken lassen, ergeben sich auf diese Weise Ajax ähnliche Funktionalitäten.

Die Nutzung von Inlineframes zu diesem Zweck wird Remote Scripting genannt. Zwar ist Ajax auch Remote Scripting, jedoch ist meistens die Lösung mit Inlineframes gemeint.

Der einzige Vorteil der Remote Scripting in dieser Form bietet, ist die Unterstützung vieler veralteter Browser.

Die Nachteile überwiegen aber in den meisten Fällen:

Flash

Flash ist ein ursprünglich von Macromedia entwickeltes proprietäres System bestehend aus Entwicklungsumgebung bzw. Authorensoftware und Abspielsoftware mit dem sich multimediale Inhalte erstellen und wieder ausführen lassen. Um allerdings in einem Browser lauffähig zu sein, wird ein entsprechendes Plugin benötigt.

Flash wird häufig dazu benutzt einer Webseite Interaktivität oder eine umfangreichere Benutzeroberfläche zu verleihen, in vielen Fällen besteht die eigentliche Webseite dann nur noch aus HTML Angaben die den eigentlichen Flash-Inhalt einbinden. Da Flash auch Streaming erlaubt sind mittlerweile viele Videoplayer mit Flash realisiert.

Vorteile findet man in

Hauptnachteile sind

Ajax ist was die Nachteile von Flash angeht, besser gestellt, allerdings gibt es weder eine einheitliche Entwicklungsumgebung noch eine besonders große Verbreitung.

Java Applets

Ein Java Applet ist eine spezielle Art eines in Java geschriebenen Programms, das innerhalb einer Webseite ablaufen kann. Allerdings benötigt ein Browser dafür ein Plugin um auf die ebenfalls benötigte Java-Laufzeitumgebung (JVM) zugreifen zu können. Solche einbegundenen Java Anwendungen sind im Internet eher selten anzutreffen, häufiger gibt es spezielle Java Applets in Firmen Intranets.

Ein großer Vorteil und Alleinstellungsmerkmal war lange Zeit die Plattformunabhängigkeit, mittlerweile ist dies aber kaum noch ausschlaggebend da andere Lösungen ebenfalls auf einer Vielzahl von Plattformen funktionieren.

Ein wesentlicher Nachteil ist die teilweise recht lange Zeit die ein Applet zum Herunterladen und Initialisieren benötigt, insbesondere wenn die JVM selbst nocht nicht initialisiert wurde.

Desweiteren ist es schwieriger gute Benutzeroberflächen zu erschaffen als es z.B. direkt mit (D)HTML möglich ist.