02.10.2012, 00:00 Uhr
Einige Facts zu TypeScript
TypeScript macht Entwicklern, die mit der Microsoft-Welt vertraut sind, das Schreiben von JavaScript-Anwendungen sehr viel einfacher und erlaubt erstmals auch das Schreiben großer Anwendungen in großen Teams, ohne Angst vor der Fehlersuche haben zu müssen.
TypeScript ist eine Obermenge von JavaScript, die zu purem JavaScript kompiliert wird. Kompilierte TypeScript-Programme laufen mithin auf allen Plattformen, die JavaScript beherrschen - in jedem Browser, auf jedem Betriebssytem. Jeder JavaScript-Code ist praktisch auch TypeScript-Code. Man kann ihn per copy-and-paste einfügen, es sind keine Änderungen notwendig. Allerdings vereinfacht TypeScript viele Dinge und vergleicht man als Entwickler, der lieber mit C# arbeitet den TypeScript-Code mit dem generierten JavaScript-Code, dann ist der TypeScript-Code viel einfacher zu verstehen. Der Vergleich zwischen TypeScript und generiertem JavaScript ist übrigens auf dem TypeScript-Playground schon während des Eintippens zu sehen.
Die Sprache, alle Bibliotheken und der Compiler sind Open Source. Alle JavaScript-Bibliotheken laufen mit TypeScript. TypeScript ist JavaScript erweitert um statische Typen, Klassen, Interfaces und Module, womit die für Teams und große Anwendungen notwendigen Gliederungen möglich werden. Außerdem sind etliche Erleichterungen eingeflossen, welche die Eingaben kürzer machen und die Tipparbeit verringern. Der Output bleibt aber immer reines JavaScript, das man sich im Playground in Echtzeit anzeigen lassen kann.
Der TypeScript-Compiler und die zugehörigen Tools werden per Plug-in in Visual Studio 2012 eingebunden und bieten dort Statement-Vervollständigung und IntelliSense auch über externe Bibliotheken hinweg. Sie wichtigsten Bibliotheken (jQuery, node.js etc.) sowie deren Deklartionsdateien sind bereits in TypeScript enthalten, so dass IntelliSense und Code-Vervollständigung ohne zutun des Entwicklers sofort funktionieren.
Refaktorisieren von JavaScript wird mit TypeScript viel einfacher, so kann man beispielsweise einfach den Namen einer Variablen ändern (Beispiel von line nach lineNumber) und der Compiler beachtet automatisch, dass der Variablenname line in anderen Modulen oder Bibliotheken von der Änderung nicht betroffen ist. Über den Kontext-Menübefehl "Find all References" werden alle Stellen angezeigt, an denen eine Variable etc. verwendet wurde.
Der TypeScript-Compiler ist Open Source und ist in TypeScript geschrieben. Er kann auch von der Konsole aus aufgerufen werden und holt sich selbstständig die einzubindenden Bibliotheken - sie müssen nicht in die Befehlszeile zum Compiler-Aufruf eingegeben werden. Der Compiler ist derzeit ein 1.017.760 Bytes großes JavaScript-File (unkomprimiert) und kann auf Wunsch zusätzlich zur JavaScript-Datei auch eine Deklarationsdatei erzeugen, welche zu Dokumentationszwecken quasi eine Zusammenfassung der Anwendung liefert und alle Deklarationen enthält. Im Falle des Compilers selbst ist die Deklarationsdatei übrigens 117.449 Bytes groß. Damit kann man dann den Compiler selbst als eine Komponente behandeln und mit voller IntelliSense- sowie Code-Completion-Unterstützung in neue Anwendungen einbetten.
Freilich wird JavaScript durch TypeScript nicht typsicher, vielmehr arbeitet man mit einer typsicheren Compiler, um JavaScript zu erzeugen. Ein Zurück von JavaScript nach TypeScript ist derzeit (noch ?) nicht möglich.
Unter http://typescriptlang.org/ sind eine frühe Vorschauversion von TypeScript sowie eine "Online-Spielwiese" zum Ausprobieren der neuen Sprache zu finden. Auf Channel9 gibt Anders Hejlsberg eine fast einstündige Video-Einführung in TypeScript mit vielen Code-Beispielen, auch unter Verwendung von node.js und jQuery. Der Quellcode der Programmiersprache kann auf CodePlex unter http://typescript.codeplex.com/ eingesehen werden. [bl]