Dynamische Web 2.0 Anwendungen beruhen zum Grossteil auf der Möglichkeit, Code
auf der Client-Seite, also einem Web-Browser, auszuführen.
Die hierzu universell von allen gängigen Browsern unterstützte Skript-Sprache
JavaScript wurde bereits 1995 zu Anfangszeiten des World Wide Webs entwickelt,
als ihr "Erfolg" - als Sprache immer grösser werdender Rich-Client-Plattformen -
noch nicht absehbar war.
Diese Sprache wurde zwar im Laufe der Zeit um einige Funktionalitäten erweitert,
ist aber für grössere Web-Anwendungs-Entwicklung dennoch recht umständlich zu
verwenden aufgrund fehlender Modul- bzw. Bibliothekskonzepte, schwer zu
erkennender Programm-Struktur, fehlender Typen-Prüfung und Performance-Schwächen.
Die Firma Google hat sich diesem Problem gewidmet und schickt die neue
Programmiersprache Dart als direkten Konkurrenten zu JavaScript ins Rennen.
Dart ist eine dynamische objekt-orientierte Sprache deren Syntax sich an
JavaScript und Java anlehnt. Sie bietet syntaktische Features wie z.B.
einzeilige Funktionsdefinitionen, Factory-Konstruktoren (Factory-Pattern) oder
Operator-Überladung an.
Multi-Threading wird über ein Isolate-Konzept unterstützt - die einzelnen
Threads haben keinen Zugriff auf gemeinsame Speichervariablen, sondern müssen
explizit miteinander kommunizieren.
Dart wird entweder in einer eigenen virtuellen Maschine im Browser ausgeführt,
oder mittels einem Compiler in JavaScript übersetzt.