TypeScript a gagné. Voici ce que cela nous a apporté.
Le débat est terminé. La plupart des nouveaux projets frontend utilisent TypeScript par défaut. On ne se demande plus s'il faut l'adopter.
La véritable valeur ne réside pas seulement dans la détection des fautes de frappe. C'est bien plus profond que l'argument initial.
Les types fournissent une documentation qui ne devient jamais obsolète. Une signature de fonction vous indique exactement ce dont un morceau de code a besoin et ce qu'il renvoie. Si un développeur ajoute une nouvelle option à un type d'union, le compilateur vous oblige à mettre à jour chaque partie de votre code. Les commentaires s'altèrent avec le temps. Les types, non.
Le refactoring passe d'une tâche effrayante à une tâche sécurisée. Dans un code non typé, renommer un champ ressemble à un coup de poker. Avec TypeScript, vous modifiez le type et le compilateur vous fournit une liste de chaque ligne brisée. Cela élimine la peur de toucher au code existant.
Les types améliorent également votre travail avec l'IA.
Lorsque vous demandez à une IA de modifier du JavaScript non typé, elle devine la structure. Elle commet des erreurs qui mènent à des bugs en production. En TypeScript, le type agit comme une spécification. L'IA connaît les règles. Si l'IA fait une erreur, le compilateur la détecte immédiatement. Les types transforment le « code plausible » en « code prouvé ».
Les types ne vous ralentissent pas. Dans un flux de travail avec l'IA, ils vous accélèrent. Ils agissent comme des garde-fous pour que vous puissiez faire confiance au code généré sans avoir à vérifier chaque ligne manuellement.
Écrivez vos types avec intention :
• Utilisez des unions plutôt que plusieurs booléens. Un statut tel que "loading" | "error" | "ready" empêche les états impossibles.
• Nommez vos types de domaine. Utiliser type Cents = number rend votre intention claire.
• Évitez any. Utilisez unknown et affinez vos types à la place. any détruit votre filet de sécurité.
• Laissez l'inférence faire son travail. Vous n'avez pas besoin de tout étiqueter. Étiquetez vos signatures de fonction et vos API exportées, puis laissez le reste couler.
TypeScript a transformé les bases de code en ensembles de contrats imposés. Ces contrats permettent un refactoring sans crainte et une assistance par l'IA fiable.
Nous avons commencé à utiliser les types pour arrêter 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
