Clientseitige Skriptsprachen
# Clientseitige Skriptsprachen

Als clientseitige Skriptsprachen (client-side script languages) bezeichnet man allgemein solche Skriptsprachen, die (u. a. auch) zum Erstellen von Webanwendungen verwendet werden, die auf Seite des Webbrowsers (Client) ausgeführt werden. Davon abzugrenzen sind serverseitige Skriptsprachen, mit denen man Skripte schreibt, die auf dem Webserver ausgeführt (interpretiert) werden (z. B. Perl, PHP, Python etc.). Clientseitige Skriptsprachen sind ein wesentlicher Bestandteil von Dynamic HTML (DHTML).

## JavaScript

Die heute wohl bedeutendste, clientseitige Skriptsprache ist JavaScript, da alle gängige Webbrowser diese standardmäßig unterstützen. Eine gewisse Bedeutung haben daneben noch VBScript und ActionScript.

## Alternativen zu JavaScript

Theoretisch kann jede Skriptsprache clientseitig verwendet werden. Die Tatsache, dass in der Praxis ausschließlich JavaScript zum Einsatz kommt, hat weniger einen technischen Hintergrund, als einen Historischen und Politischen: Der historische Grund ist, dass JavaScript die erste Scriptsprache war, die im Webbrowser zum Einsatz kam und Verbreitung fand, sie wurde eigens dafür vom Gründer von Mozilla entwickelt; der politische Grund ist, dass sich die Hersteller aller relevanten Webbrowser auf eine entsprechende Unterstützung einer neuen Skriptsprache einigen müssten, damit die verwendete Skriptsprache auch universell und unabhängig vom verwendeten Webbrowser funktioniert.

Es gibt jedoch durchaus technische Lösungen, die es ermöglichen, andere Skriptsprachen als JavaScript auf der Clientseite bei der Entwicklung zu verwenden. Dabei wird in einer anderen Skriptsprache programmiert, das Ergebnis jedoch dann von den verwendeten Technologien automatisch in JavaScript übersetzt.

Je nach verwendeter Technologie geschieht dies manuell, so dass das JavaScript-Ergebnis anschließend vom Entwickler manuell in die Webseite integriert wird, oder automatisch in Echtzeit, so dass der ursprüngliche Code bestehen bleibt und in Echtzeit im Browser beim Aufrufen der Webseite in JavaScript übersetzt wird.

Diese technologischen Ansätze ermöglichen es also dem Entwickler, eine andere Skriptsprache, als JavaScript zu verwenden, haben jedoch auch verschiedene Nachteile, z. B. einen zusätzlichen Overhead beim Laden der benötigten Bibliotheken beim Laden der Seite, eine zeitliche Verzögerung im Falle einer Echtzeitübersetzung und eine zusätzliche Komplexitätsebene bei der Fehlerbeseitigung.

Ein Beispiel für diesen technologischen Ansatz ist z. B. Brython: Brython (Zusammengesetzt aus Browser + Python) erlaubt das clientseitige Scripten in Python und erzeugt daraus beim Aufrufen der Webseite in Echtzeit im Browser JavaScript.

