Pro TypeScript

Pro TypeScript Pro TypeScript
Steve Fenton
Apress
August 2014
5star

TypeScript ist ein JavaScript-Superset, d.h., valides JavaScript ist valides TypeScript. TypeScript kennt aber weitere Konzepte, die später dann nach JavaScript kompiliert, oder – etwas genauer und spektakulärer – transpiliert werden.

Bisher habe ich einen Bogen um solche Transpiler wie CoffeeScript und Dart gemacht. Die Tatsache, dass die AngularJS-Entwickler mit TypeScript arbeiten, hat mich dann dazu gebracht, mir das einmal an einem Nachmittag anzuschauen. TypeScript gefällt mir sehr gut, weil

  • es eben nur ein JavaScript-Superset ist und man deswegen keine zweite Programmiersprache lernen muss,
  • mir die zusätzlichen Konzepte allesamt hilfreich vorkommen,
  • es IDE-Unterstützung für Visual Studio, Eclipse, Webstorm u.a. gibt
  • und die Lernkurve für Java- und JavaScript-Entwickler sehr flach ist.

Was sind das jetzt für zusätzliche Konzepte?

  • Variablen können typisiert werden. Es gibt sogar Unterstützung für Generics.
  • Es gibt Interface-, Klassen- und Modulkonzepte, wie man sie ähnlich auch von Java kennt.
  • Mit Modulen und Mixins lassen sich wiederverwendbare Module aufbauen und miteinander kombinieren.

Der Mehrwert all dieser Konzepte kommt erst wirklich bei größeren JavaScript-Projekten zum Tragen und helfen die typischen Probleme wie Scope-Probleme (eine Variable ist in den globalen Namespace “gerutscht”) zu verhindern. Editoren können damit auch verbessertes Refactoring anbieten. Mein WebStorm leistet hier schon Beachtliches.

Praktisch für alle wichtigen Javascript-Frameworks gibt es bereits ein Declaration File (.d.ts), mit dem die wichtigen Objekte und Methoden der Frameworks im TypeScript-Editor als Typen auftauchen und somit Autovervollständigung funktioniert.

Das Buch bietet aus meiner Sicht deutlichen Mehrwert gegenüber der Onlinedokumentation.