- TypeScript erhöht die Code-Qualität
- Wichtig: TypeScript existiert nicht zur Laufzeit
interface
vstype
- Beides beinahe gleich mächtig
type
als "Alias"interface
für Objekte
async/await
für Asynchronität
- Klassen sind sehr selten notwendig
- Funktionen sind stateless und dadurch insgesamt flexibler
- Union Types mit
string | number | null
enum
ist JS und kann deshalb als Wert genutzt werden- Discriminated Unions = Union-Werte spezifisch nutzen
- Generics = Typen dynamisch halten (selten notwendig)
- Tests sind wichtig, um Code-Qualität zu sichern und Bugs langfristig zu verhindern
- In Tests kann mit
as X
gecastet werden, um unvollständige Werte zu erlauben Partial
mit Helper-Funktionen- Mocking:
vi.mock
const someFunctionMock = vi.mock<typeof someFunction>(someFunction);
someFunctionMock.mockResolvedValue(...)
- TypeScript so streng wie möglich konfigurieren
types.d.ts
vermeiden