TypeScript: Anleitungen und Praxiswissen | Seite 12 | mironsoft Blog
TypeScript
-
27.03.2025
TypeScript-Typen existieren nur zur Kompilierzeit und schützen Formulardaten nicht vor unsauberen Nutzereingaben, die zur Laufzeit als unbekannte Strings ankommen. Dieser Artikel zeigt, wie Schema-Validierungsbibliotheken wie Zod und Valibot Laufzeit-Prüfung und TypeScript-Typen aus einer einzigen Quelle ableiten, praxisnah für Checkout-Formulare, native FormData-Verarbeitung, typisierte API-Schichten und verständliche Fehlermeldungen in der Benutzeroberfläche.
-
26.03.2025
Eine Typänderung, die Konsumenten-Code zum Compile-Fehler macht, ist ein Breaking Change, auch ohne jede Änderung am Laufzeitverhalten. Backwards Compatibility bei Typ-Änderungen bedeutet, Overloads, Deprecation-Kommentare, API-Reports und Semantic Versioning gezielt einzusetzen, damit eine TypeScript-Bibliothek wachsen kann, ohne bestehende Konsumenten bei jedem Release zu überraschen.
-
20.03.2025
PHP-Entwickler kennen die meisten Konzepte von TypeScript bereits, nur unter anderen Namen und mit anderen Garantien. Dieser Artikel ordnet Union Types, Interfaces, Immutability, Enums und Generics aus der PHP-Welt ihren TypeScript-Entsprechungen zu, zeigt konkret, wo nominale und strukturelle Typisierung auseinanderlaufen, und vergleicht ein typisches Value Object Zeile für Zeile in beiden Sprachen.
-
18.03.2025
Worker Threads lösen ein reales Problem in Node.js: CPU-intensive Berechnungen blockieren sonst den einzigen Event-Loop-Thread und lassen die gesamte Anwendung einfrieren. Die Kommunikation zwischen Haupt-Thread und Worker läuft aber über postMessage mit einer any-typisierten Payload, was ohne bewusste Typisierung schnell zu Laufzeitfehlern führt, die der Compiler nicht sehen kann.
-
14.03.2025
Kein stilles Wegoptimieren von Importen mehr: mit verbatimModuleSyntax steht im Output exakt das, was im Quellcode geschrieben wurde.
-
11.03.2025
Seit TypeScript 5.0 lassen sich Typparameter mit dem const Modifier versehen. Damit leitet der Compiler bei jedem Aufruf automatisch die engstmöglichen Literal-Typen ab, ohne dass der Aufrufer selbst as const schreiben muss.
-
10.03.2025
Beide Konstrukte typisieren Objekte mit mehreren gleichartigen Werten, doch sie geben dem Compiler grundlegend verschiedene Versprechen. Wer { [key: string]: T } und Record<K, V> für austauschbar hält, produziert entweder zu laxe Typen, die jeden Tippfehler durchwinken, oder zu strenge Typen, die an der Laufzeitrealität scheitern. Dieser Artikel zeigt Syntax, Semantik und die konkrete Entscheidungshilfe für den Alltag.
-
10.03.2025
Ein Event-Handler ohne korrekten Typ verleitet fast automatisch zu any oder zu wiederholten Typumwandlungen, sobald auf event.target.value zugegriffen wird. React Event Handler Types lösen dieses Problem an der Wurzel: SyntheticEvent, ChangeEvent und die passenden Handler-Typen wie MouseEventHandler kennen exakt, welches Element ein Event ausgelöst hat und welche Eigenschaften darauf verfügbar sind. Dieser Artikel zeigt, wie man Event Handler Types in React systematisch und ohne any einsetzt.
-
07.03.2025
Die Standard-codegen.yml aus dem Quickstart deckt gerade mal die Hälfte dessen ab, was GraphQL Code Generator wirklich kann. Custom Scalars, Fragment Masking und das near-operation-file Preset entscheiden darüber, ob generierter Code eine Freude oder eine Zumutung ist.
-
03.03.2025
Eine TypeScript-Bibliothek, die React, Vue oder eine andere Wirtsbibliothek erweitert, darf deren Typen nicht selbst bündeln, sonst kollidieren zwei Kopien derselben Typdefinition beim Konsumenten. Peer Dependencies typsicher zu deklarieren bedeutet, den richtigen Versionsbereich, die richtigen Imports und die richtige CI-Testmatrix für genau dieses Problem aufzusetzen.