TypeScript ist eine Open-Source-Programmiersprache, die von Microsoft entwickelt wurde. Es ist eine Supermenge von JavaScript (JS), dh alle Programme in JavaScript sind auch gültige TypeScript-Programme. TypeScript fügt einige objektorientierte Funktionen zu JavaScript hinzu, einschließlich Klassen, Module und Schnittstellen, wie in der Quizfrage erwähnt.
Klassen sind ein zentraler Bestandteil der objektorientierten Programmierung und TypeScript ist keine Ausnahme. Sie bieten eine klare und übersichtliche Möglichkeit, Objekte und ihre Interaktionen zu definieren. Sie unterstützen sowohl Daten (Eigenschaften) als auch Verhaltensweisen (Methoden).
Beispiel für eine Klasse in TypeScript:
class Auto {
constructor(public marke: string, public modell: string) {}
}
Ein neues Objekt kann mit dem new
Schlüsselwort erstellt werden:
let auto = new Auto("Mercedes", "Benz");
In TypeScript bezieht sich der Begriff Modul auf eine Datei, in der Code geschrieben wird. Alle Funktionen, Klassen und Schnittstellen, die in einer Moduldatei definiert sind, sind standardmäßig privat. Wenn Sie sie außerhalb des Moduls verfügbar machen möchten, müssen Sie sie export
ieren. Umgekehrt verwendet man ein import
Statement, um Zugriff auf die exportierten Teile anderer Module zu erlangen.
Beispiel für ein Modul:
// auto.ts Datei
export class Auto {
constructor(public marke: string, public modell: string) {}
}
Um die Auto-Klasse zu verwenden:
// main.ts Datei
import { Auto } from './auto';
let auto1 = new Auto("BMW", "320i");
In TypeScript sind Schnittstellen kraftvolle Wege, um die Struktur von komplexen Objekten zu definieren. Sie fungieren als Verträge für Klassen und stellen sicher, dass die Klassen bestimmte Eigenschaften oder Methoden enthalten.
Beispiel einer Schnittstelle:
interface Auto {
marke: string;
modell: string;
}
Zusammengenommen bieten Klassen, Module und Schnittstellen leistungsstarke objektorientierte Programmierungsmerkmale in TypeScript. Durch das Hinzufügen dieser Funktionen ermöglicht TypeScript den Entwicklern, robuste und skalierte JavaScript-Anwendungen zu erstellen.