© istockphoto.com/Rogotanie
TypeScript auf dem Vormarsch zur Serverentwicklung mit Node.js

Node.ts - Mit Typen? Aber sicher!


Stellen Sie sich vor, Sie könnten eine leichtgewichtige dynamische Programmiersprache mit allen Vorteilen der statischen Codeanalyse – Refactoring und Codevervollständigung – zur Cross-Plattform-Serverentwicklung nutzen. Wenn wir dann noch in der Lage sind, Teile des Codes auch für die Cross-Plattform-Frontend-Entwicklung zu nutzen, haben wir den perfekten Partner gefunden. Klingt gut? Willkommen in der Welt von Node. js, aber mit TypeScript.

TypeScript [1] ist keine eigene Programmiersprache, sondern ein Superset von JavaScript, welches zu JavaScript kompiliert wird. Das heißt, jedes gültige JavaScript ist auch gültiges TypeScript. In TypeScript können wir, wie der Name schon sagt, JavaScript um die Angabe von Typen erweitern und Typsicherheit erlangen – aber ohne die Dynamik von JavaScript als solche zu verlieren. Für große Serversoftware ist dies ein enormer Vorteil. Durch statisch typisierten Code können wir statische Analysen durchführen und somit umfangreiches Wissen über den Code berechnen. Ein Traum für Refactoring und Codevervollständigung. Übrigens, TypeScript wird von Microsoft entwickelt und von Anders Hejlsberg designt. Selbiger hat auch die Sprache C# entworfen. Java- und vor allem .NET-Entwickler können sich sehr schnell zurechtfinden und auf bekannte Sprachfeatures stoßen.

Bevor wir mit TypeScript starten können, benötigen wir zwei Voraussetzungen. Die erste ist Node.js, unsere Server-JavaScript-Runtime. Die zweite ist ein Editor, der die Features von TypeScript durch statische Codeanalyse nutzen kann. Hier sind Editoren wie Visual Studio Code oder WebStorm zu nennen. Natürlich können wir Type­Script mit jedem beliebigen Texteditor schreiben, wenn wir dabei auf die Vorteile der Codeanalyse verzichten. Da WebStorm nach Ansicht des Autors aktuell den besseren Support für TypeScript hat, werden wir im Rahmen des Artikels damit arbeiten. Gemeinsamen werden wir ein kleines HTTP-API entwickeln, um Produkte zu verwalten. Ein Produkt wird aus einem Namen und einem Preis bestehen. Die folgenden Routen werden implementiert:

  • GET/products: Gibt eine Liste von Produkten zurück.

  • POST/products: Legt ein neues Produkt an.

Das fertige Projekt ist auf GitHub [2] zu finden.

Installation der Abhängigkeiten

Nachdem wir Node.js [3] installiert haben, legen wir zuerst einen Ordner productApi an, in dem wir all unsere Sourcen ablegen werden. In diesem Ordner führen wir das folgende Kommando auf der Kommandozeile aus:

npm init -y

Damit erstellen wir eine packag...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang