
Brauchst Du eine Einführung in TypeScript?
Angular, React und Ionic verwenden diese Sprache.
Was macht die Sprache so anders? Wie nutze ich TypeScript effizient?
Dieser Guide gibt Dir eine Schritt-für-Schritt-Einführung!
Starten wir!
Inhalt
Herausforderung: TypeScript verstehen
Du kannst mit TypeScript z. B. einen Blog objektorientiert mit Beiträgen, Autoren, Kommentaren nachzustellen.
Der geschulte Java-Entwickler freut sich, wenn er mit TypeScript objektorientiert programmieren darf.
Voraussetzungen: Dein Wissen
- Etwas programmiert haben … z. B. mit JavaScript als Grundlage von TypeScript.
- Grundlagen in der Kommando-Ziele
- Admin-Reche, um Programme zu installieren und zu deinstallieren
Technische Voraussetzungen
- Admin-Rechte
- Mehr als 5 GB RAM (besser 12 GB – 16 GB)
- Code Editor
- optional WSL für Windows Nutzer
Editor (Visual Studio Code)
Neben dem Browser brauchst Du einen Code-Editor Deiner Wahl.
Notepad(++) kannst Du alternativ nutzen. Am besten verwendest Du einen Editor mit Syntax-Highlighting und IntelliSense wie z. B. Visual Studio Code oder Atom.

Konzept: Warum TypeScript cool ist!
Typenfest zu programmieren hilft Dir einen Überblick über den Code zu behalten.
Was vielen Anfänger lästig erscheint, hilft Dir beim Programmieren von komplexen Projekten, weil Du die Übersicht behalten kannst.
Microsoft hat die Programmiersprache TypeScript entworfen, um mehr Ordnung in die Webprogrammierung hineinzubringen.
Was ist eine Typisierung überhaupt? TypeScript erlaubt dem Programmierer, Variablen mit einer Typisierung zu verwenden, z. B. let date:Date; oder let text:string = ""
Dies erlaubt ein einfacheres, objektorientiertes Programmieren.
JavaScript Next-Generation
Gültiger JavaScript Code ist ein gültiger TypeScript Code!
Wenn Du JavaScript kannst, dann musst Du nicht mehr viel lernen. TypeScript erweitert die Möglichkeiten-Palette von JavaScript und bietet eine Reihe von Vereinfachungen.
Der Angular Strict-Compiler verpflichtet Dich, den Typen-losen JavaScript-Code in „ausformulierten“ TypeScript Code umzuwandeln. Damit gehst Du sicher, dass Du immer Parametern, Variablen und Rückgabewerte typisierst
5 Gründe – TypeScript ist besser als JavaScript
- Einfachere Typisierung (optional) von Variablen:
Java besitzt eine strenge Typisierung. Jede Variable weist der Java-Code einem Typ zu. Dies hilft dem Programmierer für die Orientierung im Code. - ECMAScript bis 3:
JavaScript hat seit 1995 mehrere Updates erhalten, die den Funktionsumfang der Script-Sprache erweitern. Der TypeScript-Compiler kann den TypeScript-Code verständlich in JavaScript kompilieren. - Einfaches Refactoring wegen Typisierung:
Wenn Du auf die Idee kommst, dass eine Variable nicht Deinem Benennung-Standard entspricht, kannst Du die Variable einfach umbenennen. - Dependency Injection:
… vereinfacht das Testen mit TypeScript. - Beliebt und notwendig:
TypeScript verwendet in verschiedenen Web-Frameworks wie Angular und Ionic

Basics: TypeScript Grundlagen
Was zum Henker ist TypeScript?
Lese Dir den folgenden Abschnitt durch, um den Praxis-Teil besser zu verstehen.
Zu Beginn möchte ich Dir ein paar zentrale Begriffe von TypeScript erklären. Klassen, Namespaces und Module sind Konzepte, die Dich beim Programmieren unterstützen können.
TypeScript Klassen verstehen
- Klasse: Mit Klassen kannst Du die Realität als abstrahietes Model abbilden.
class Person{
name:string;
}
- Extends: Der Befehl erweitert eine bestehende Klasse mit einer Super-Klasse. Die Unterklasse „erbt“ alle Variablen und Funktionen von der Super-Klasse. Der
super();
Befehl initialisiert die Variablen der Super-Klasse.class Hirsch extend Tier {
constructor( ){
super(„typ3“
}
}
Module managen – Import + Export von Namespaces
- Namespace: Ein Namespace ist eine in sich geschlossen Datei, die einen eigenen Benennungs-Raum nutzt. TypeScript möchte vermeiden, dass gleich benannte Variablen sich gegenseitig stören. Ein Namespace kann Klassen, Interfaces und Variablen beinhalten.
namespace PersonalModul{
// neuer Namensraum ohne Überschneidung nach außen
}
- Module: Interne Module sind Namespaces und externe Module sind normale Module. Bevor Du ein Modul importierst, muss Du einen Export in der Quelldatei deklarieren.
- Export: Das Statement macht die Klasse, Interface oder Variable nach außen sichtbar / verwendbar.
class Person{
}
export { Person };
- Import: Am Anfang einer Datei kann der Entwickler mit dem import-Befehl Module von außerhalb einbinden.
import { Person } from "./Person";
- Interfaces: … sind Zusammenstellungen von Variablen, die in einem Zusammenhang immer vorkommen sollen.
Coden: Ab in die Praxis
Jetzt wird’s ernst.
Wir erstellen mit diesen Schritten Deinen ersten TypeScript.
Solltest Du stecken bleiben – dann schreibe einen Kommentar mit Deiner Fehlermeldungen unten in das Kommentar-Feld.
Etwas Praxis hilft bei der Verständnis:
JavaScript nenne ich eine „Anfänger-freundliche“ Programmiersprache, weil das Programm nicht direkt komplett abstürzt und teilweise funktional bleibt.
Denke daran, dass JavaScript in purer Form gültiger TypeScript-Code ist!
Variablen-Typen
- let-Variablen sind nur innerhalb der geschweiften Klammern erreichbar. Ein Aufruf von außen geht ins Leere (undefinded).
let text:string = "mein super text";
- const-Variablen deklariert der Programmierer am Anfang einer Datei, die global in allen Funktionen als eine Konstante verwendbar ist. Bei Java unterscheidest Du Float, Double, Short usw. TypeScript kennt nur
number
.const PI:number = 3.141;
- var kannst Du wie in JavaScript verwenden.
var normaleVariable:number = 42; - Typisierung sind für Dezimal-, Binär-, Hexadezimal- und Oktal-Zahlen möglich.
const hexa:number = 23a23ff;
Strings…let text:string = „Das ist Text“;
Array…let textlist:string[] = [„Alle“,
„
sind“, „gut“];
Iteratoren
- for … of
kann durch einen Array iterieren und gibt die WERTE("Tag","Nacht","Morgen")
im Array zurück.for(let entry of blogEntries) {
console.log(entry)
}
- for … in
kann druch einen Array iterieren und gibt die SCHLÜSSEL(0,1,2..)
im Array zurück.for(let keys in blogEntries) {
console.log(keys)
}
Funktionen
… können in TypeScript typisiert sein. Die Parameter und die Rückgabewerte sollten im Typ festgelegt sein.
function addStringAndText(figure:number, text:string):string{return toString(figure) + text;}
Die häufigste Buchstabenfolge, mit der Dich TypeScript beglückt, ist this.
. Wenn Du ein Variable außerhalb der geschweiften Klammer ansprechen möchtest, setze ein this.
vor den Variablennamen:
const PI:number = 3.141;
function calculateCircle(r:number){
return r*r*this.PI
}

Installation von TypeScript bis Hello World
Downloade Dir Node.js.
Installiere Node.js mit dem grafischen Installer, um NPM in der Konsole zu nutzen.
Führe als Befehl in der CMD / Bash ausnpm install -g typescript
Erstelle einen Projekt-Ordner mit einer…
HTML-Basis-Datei index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Typescript Tutorial</title>
<script src="main.js"></script>
</head>
<body>
</body>
</html>
TypeScript-Datei main.ts
import { differenceInYears } from 'date-fns';
import { Author } from './Author';
import { BlogEntry } from './BlogEntry';
var markHartmann = new Author("Mark Hartmann", new Date('December 17, 1995 03:24:00'), "Gartenstraße 4");
console.log(markHartmann.toString());
let yearsOld = differenceInYears(Date.now(), markHartmann.birthday);
console.log("Mark is " + yearsOld + " years old.");
let seriesOfBlogPosts = [];
for (let blogID = 0; blogID < 10; blogID++) {
seriesOfBlogPosts.push(new BlogEntry("Cool Title " + blogID, new Date('December 3, 2095 03:24:00'), "Text " + blogID, markHartmann));
}
seriesOfBlogPosts.forEach(entry => {
console.log(entry.toString());
})
Füge eine tsconfig.json hinzu:
{
"scripts": {
"clean": "rimraf dist",
"start": "npm-run-all clean --parallel watch:build watch:server --print-label",
"watch:build": "tsc --watch",
"watch:server": "nodemon './dist/index.js' --watch './dist'"
}
}
CSS-Datei für die Stylesheets
Der Befehltsc *.ts --watch
überwacht alle Änderungen in den TypeScript Dateien. Sobald eine Änderung erkannt ist, kompiliert der TypeScript Compiler die Datei in JavaScript.
Füge die von dem TypeScript Compiler generierte JavaScript-Datei in HTML ein.<script src="main.js"></script>
Schreibe in die main.tsalert(„HelloWorld“);
Rufe die HTML-Datei in Deinem Browser auf. Du brauchst keinen XAMPP zwingend zu verwenden.
Die Konsole sollte nach dem Speichern von main.ts die Änderungen zu der JavaScript-Datei automatisch kompilieren.

Programmieren mit TypeScript einfach
Löschealert(„HelloWorld“);
damit wir eine etwas umfangreicheres Projekt starten können.
Erstelle die Dateien Author.ts und BlogEntry.ts, um die Klassen voneinander zu trennen
Author.ts
export class Author {
name: string;
birthday: Date;
address: string;
constructor(public nameIn: string, public birthdayIn: Date, public addressIn: string) {
this.name = nameIn;
this.birthday = birthdayIn;
this.address = addressIn;
}
toString(): String {
return "Name: " + this.name + ", Geburtstag: " + this.birthday + ", Adresse: " + this.address;
}
}
BlogEntry.ts
import { Author } from './Author';
export class BlogEntry {
title: string;
publishedAt: Date;
text: String;
author: Author;
constructor(public titleIn: string, public publishedAtIn: Date, public textIn: string, public authorIn: Author) {
this.title = titleIn;
this.publishedAt = publishedAtIn;
this.text = textIn;
this.author = authorIn;
}
toString() {
return "Titel: " + this.title + ", publishedAt: " + this.publishedAt + ", text" + this.text + ", author: " + this.author.name;
}
}
Speichere die Dateien.
Lade den Browser neu
Gebe in die Konsolenpm install date-fns
ein, um ein Datumsformat-Paket zu installieren
Gebe in die Konsolenpm install --save typescript nodemon npm-run-all rimraf
ein, um ein Säuberungstool für die Build-Vorgänge zu installieren.
Gebe in die Konsolenpm i nodemon
um die Änderungen in Echtzeit innerhalb der Konsole zu betrachten
Erstelle ein tsconfig.json, wo Du alle Compiler Einstellungen für den Build
Start mittsc –watch
die automatische Kompilierung der TypeScript Dateien zu JavaScript
Starte die Echtzeit-Ausgabe von Nodemon mit dem Wortnodemon
INNERHALB eines anderen Terminals, sodass der TypeScript-Compiler ungestört weiterarbeiten kann. In dem Terminal-Fenster, wo Du Nodemon gestartet hast, sollten alle Konsolen-Ausgaben zu sehen sein. Dort kannst Du Deine Ergebnisse überprüfen.


Erklärungen zum Code
Das import { X } from ‚X‘;
fügt den Code über eine Codeinjektion in das main.ts-Script ein. Eine Klasse besteht aus den Attributen mit den Typen (optional), dann folgt der Konstruktor zur Initialisierung der Klasse.
Erweiterungen: Wie kann ich TypeScript erweitern?
Hast Du noch nicht genug von dem TypeScript Tutorial?
Dann füge mehrere Node Module hinzu.
Wichtigste NPM Befehle
Um mit TypeScript richtig durchzustarten, solltest Du die wichtigsten NPM-Befehle und Tricks kennen, um externe Module zu nutzen.
Andere JavaScript / TypeScript Entwickler haben in den letzten Jahren Module zu Zeit-Formatierung, UI-Elemente, Algorithmen usw. entwickelt.

- Nach dem Auschecken aus dem Repo, kannst Du die Node.js Module nachinstallieren, weil diese aufgrund von Speicherplatz nicht in dem Repo abgelegt sind:
npm i
- Wenn Du ein neues Modul benötigst, installiert der Befehl
npm i modulName
das Modul. Über ein import Statementimport {modulName} from 'modulname';
kann die TypeScript Datei das Modul erreichen
Super-Geheime NPM-Tricks für TypeScript. [Teilen verboten]
- Falls Du den node_modules Ordner löschen willst, verwende Rimraf
npm install rimraf -g
oder bei Linuxrm -rf node_modules
Je nach Größe des Projekts kann eine Löschung länger dauern, weil Node.js eine sehr verschachtelte Struktur verwendet. Lösche mitrimraf node_modules
- Meiner Erfahrung nach „spinnt“ Node.js alle 3-4 Tage. Lösche einfach den Cache
npm cache clean –force
- Einzelne Module kannst Du mit
npm uninstall modulName
- Die Node.js Entwickler updaten Ihre Module regelmäßig. Wegen neuen Versionen musst Du eventuell Deinen Code anpassen. Update die Module mit
npm update
um kritische Fehler / Bugs / Vulnerabilitäten zu eliminieren. - Du kannst mit Node.js Module global oder lokal installieren. Module wie Ionic, Angular oder Rimraf installieren andere Module und erstellen eigen Projekte. Das -g am Ende des Installationsbefehls bewirkt die Installation innerhalb des Benutzerordners / AppData stattfindet.
npm i ionic -g
Fazit: Dein erstes TypeScript-Script
TypeScript ist sehr vielseitig einsetzbar-
Probiere Dich aus.
- Schreibt von Fehlermeldungen, die auftreten …
- Kritik mit Verbesserungsvorschlägen für das Tutorial …
- Installationsprobleme von TypeScript …
Danke. Ich freue mich auf Euer Feedback
Credits zu den verwendeten Bildern Icons made by Vectors Market from www.flaticon.com is licensed by CC 3.0 BY
Quellenangabe Bilder: Icons und SVG-Grafiken im Titelbild von Microsoft PowerPoint 2019, frei verfügbar nach EULA
*) Mit dem Abonnement des Newsletters erklären Sie sich mit der Analyse des Newsletters durch individuelle Messung, Speicherung und Analyse von Öffnungsraten und der Klickraten in Profilen zu Zwecken der Gestaltung künftig besserer Newsletter einverstanden. Sie können die Einwilligung in den Empfang des Newsletters und die Messung mit Wirkung für die Zukunft widerrufen. Mehr in der Datenschutzerklärung.
Hallo Steffen,
bei main.ts (Schritt 2) ist nochmal das main.html in der Sourcecode Box zusehen. Wahrscheinlich ein Copy-paste Fehler ?
2. Bei „tsc *.ts –watch“ kommt „File ‚*.ts‘ not found.“
wenn ich es zu main.ts ändere ist alles OK.
Muss man evt. mit tsconfig.json arbeiten ? Gelesen, nicht probiert….
Ist leider immer noch so.
Geändert, danke für die Erinnerung
Hallo ich werde gerne ein nette Hacker sein und will das so gerne lernen hab viel gesucht aber nicht gefunden es wurde ganz lieb von euch wenn ihr das mir beibringt🥺🥺
Hallo, ich habe eine Einstiegstutorial für das legal Hacking geschrieben https://lippke.li/hacking-lernen/