TypeScript–das bessere JavaScript!

Ich habe mich mit Webprogrammierung immer schwer getan. Insbesondere mit JavaScript konnte ich mich nie richtig anfreunden. Warum das so ist? Na ja. Ich habe von Anfang an seit ich programmiere, immer mit streng typisierten Programmiersprachen wie Java oder C# gearbeitet. Hier ist alles genau definiert und man muss – zumindest vor der Einführung von var – immer angeben von welchem Typ genau eine Variable ist.

Auch die Eigenart von JavaScript die Sichtbarkeit von Variablen nicht an einen durch geschweifte Klammern definierten Block zu koppeln, ist etwas, was ich erst mal ungläubig zur Kenntnis nehme.

Ich habe schon ein paar Anläufe gemacht mich mit JavaScript näher zu befassen, aber irgendwie wurden wir nie richtige Freunde. Anfang des Jahres habe ich ein neues Projekt übernommen, bei welchem die JavaScript-Umgebung Node.js zum Einsatz kam. In dem Projekt wurde allerdings nicht mit JavaScript programmiert, sondern mit TypeScript. Diese Sprache kannte ich vorher nicht und ich musste mich erst mal schlau machen, um was es sich dabei handelt.

TypeScript ist eine von Microsoft vorangetriebene Programmiersprache und eine Obermenge von JavaScript. Das bedeutet, dass JavaScript komplett in TypeScript enthalten ist. Aber das tolle daran ist, dass TypeScript genau das bietet was Leute wie ich an JavaScript vermissten, nämlich die Möglichkeit der Typisierung, Blocksichtbarkeit von Variablen mit dem Schlüsselwort let, die Möglichkeit Klassen und Sichtbarkeiten zu definieren wie in einer objektorientierten Sprache und noch vieles mehr.

Der TypeScript-Compiler liest dann die TypeScript Dateien ein und macht daraus wieder JavaScript Code. Dieser kann ganz normal bei Webseiten, Servern oder in Node.js verwendet werden, denn alle erweiterten Konstrukte werden in pures JavaScript übersetzt.

Ich habe selbst mehrfach die Erfahrung gemacht mit JavaScript schier zu verzweifeln, aber mit TypeScript schneller und sauberer ein Ergebnis zu erreichen. Der Code ist dabei viel verständlicher und  besser wartbar als JavaScript mit der selben Funktionalität. Daher kann ich, sofern Sie es nicht bereits kennen und irgendetwas im JavaScript Umfeld machen wollen, nur empfehlen sich auf jeden Fall TypeScript einmal genauer anzusehen.

Hier noch ein paar Links: