Typsicherheit für Javascript: Wie Typescript die Webentwicklung verändert hat
Javascript wurde ursprünglich für kleine Skripte im Browser entworfen, nicht für Anwendungen mit Hunderttausenden Zeilen Code. Genau dort liegt das Problem: Die Sprache ist dynamisch typisiert, das heißt, der Typ einer Variable steht erst zur Laufzeit fest. Tippfehler in Objekteigenschaften, falsch übergebene Funktionsparameter oder ein undefined, das durch durch einen großen Teil der Anwendung gereicht wird, fallen damit oft erst beim Endnutzer auf. Typescript(öffnet im neuen Fenster) ergänzt als Obermenge von Javascript die Sprache um ein statisches Typsystem, ohne dabei mit dem bestehenden Javascript-Ökosystem zu brechen. Entwickler schreiben ihren Code mit Typannotationen, der Typescript-Compiler prüft diese Typen bereits vor der Ausführung und übersetzt den Code anschließend in gewöhnliches Javascript.
Dieser Artikel erläutert, aus welcher Motivation heraus Typescript entstanden ist und stellt die Vorteile eines Typsystems für die tägliche Entwicklungsarbeit vor, gefolgt von einem Blick auf die zentrale Konfigurationsdatei tsconfig.json und die neue, in Go geschriebene Compiler-Generation ab Typescript 7. Am Ende wird der komplette Weg von der .ts-Datei bis zum lauffähigen JavaScript an einem Beispielprojekt demonstriert.