TypeScript a gagné. Voici ce que cela nous a apporté.

Le débat est terminé. TypeScript a gagné. Les nouveaux projets l'utilisent par défaut.

L'argument initial était de détecter les fautes de frappe avant qu'elles ne cassent votre code. Mais la véritable valeur est bien plus grande que cela.

Les types servent de documentation qui ne devient jamais obsolète. Une signature de fonction vous indique exactement ce qu'il faut envoyer et ce que vous recevez en retour. Si vous ajoutez une nouvelle option à une liste, le compilateur vous oblige à mettre à jour chaque partie de votre code. Un commentaire, lui, resterait là et finirait par vous mentir.

Le refactoring devient sûr. Dans l'ancien code JavaScript, renommer un champ ressemble à un pari. On recherche des chaînes de caractères et on croise les doigts. Avec TypeScript, vous modifiez le type et le compilateur vous fournit une liste de tâches pour chaque ligne brisée. Le refactoring n'est plus effrayant. C'est simplement une tâche à accomplir.

Les types améliorent également les assistants IA.

Si vous demandez à une IA de modifier du JavaScript non typé, elle doit deviner la structure. Si vous utilisez TypeScript, le type sert de spécification. L'IA sait ce qui est autorisé. Si l'IA commet une erreur, le compilateur la détecte immédiatement. Vous n'aurez pas un crash en production à 2 heures du matin. Vous aurez une ligne rouge dans votre éditeur.

Les types ne vous ralentissent pas. Dans un monde régi par l'IA, ils vous accélèrent. Ils agissent comme des garde-fous pour que vous puissiez faire confiance au code généré.

Écrivez vos types avec intention :

• Utilisez des unions plutôt que plusieurs booléens. Un statut comme "loading" | "error" | "ready" est préférable à trois drapeaux qui pourraient se contredire. • Nommez vos types de domaine. Utilisez "type Cents = number" pour exprimer votre intention. • Évitez "any". Utilisez "unknown" et affinez le type à la place. "Any" crée une faille dans votre filet de sécurité. • Laissez l'inférence faire son travail. Vous n'avez pas besoin de tout typer. Définissez vos frontières, comme les signatures de fonctions, et laissez le reste couler.

TypeScript a fait plus que détecter des fautes de frappe. Il a créé des contrats contraignants. Ces contrats permettent un refactoring sans crainte et des outils d'IA fiables.

Nous avons commencé à utiliser les types pour stopper les bugs. Nous continuons à les utiliser parce qu'ils sont le fondement de tout le reste.

Source : https://dev.to/parsajiravand/typescript-won-heres-what-that-actually-bought-us-12m8