TypeScript
Définition
Surcouche typée à JavaScript. Le compilateur attrape les erreurs avant la production. Standard de facto sur les projets web professionnels en 2026.
Qu'est-ce que TypeScript
TypeScript est une surcouche typée à JavaScript, développée par Microsoft. À l'écriture, le développeur déclare les types attendus (objet, fonction, retour d'API, props de composant), et le compilateur signale les incohérences avant même d'exécuter le code. À la compilation, TypeScript produit du JavaScript classique, compatible avec tous les navigateurs et environnements Node. C'est donc à la fois un outil de développement (analyse statique) et un format de code source qui se compile vers JS. Tous les éditeurs modernes (VS Code, WebStorm, Zed) le supportent nativement avec une expérience excellente.
Ce que ça apporte concrètement
Sur un projet professionnel, TypeScript divise par deux les bugs liés aux mauvais arguments, aux noms de champ qui changent, aux retours d'API mal interprétés. Quand vous renommez un champ dans un type, l'éditeur signale immédiatement tous les endroits qui doivent suivre. Quand vous appelez une fonction avec un argument du mauvais type, le compilateur refuse. Quand vous accédez à une propriété qui peut être undefined, TypeScript force la vérification. L'effet cumulé sur trois mois de développement est radical : moins de bugs runtime, moins de régressions, plus de confiance pour refactorer.
Pourquoi c'est devenu standard
Depuis 2020, TypeScript domine l'écosystème JavaScript professionnel. React, Next.js, Vue, Svelte, tous les SDK majeurs (Stripe, OpenAI, Anthropic, Supabase) sont écrits en TS et publient leurs types. Les nouveaux frameworks naissent en TS first. Les offres d'emploi sénior demandent TypeScript par défaut. Le marché du JS pur s'est réduit aux scripts simples et à certains projets legacy. Pour un projet sérieux démarré aujourd'hui, choisir JavaScript pur revient à se priver d'un filet de sécurité que tout le monde utilise.
Le coût d'entrée
TypeScript demande quelques semaines de pratique pour devenir confortable : comprendre les types unions, les génériques, les types conditionnels, l'inférence. La courbe est modérée pour qui maîtrise déjà JavaScript et un autre langage typé. Sur les premiers jours, on râle un peu contre les erreurs du compilateur ; au bout d'un mois, on ne peut plus revenir en arrière. Le coût d'entrée est amplement compensé sur des projets de plus de quelques semaines, et devient un net gain de temps dès qu'on dépasse quelques milliers de lignes.
Les bonnes pratiques
Quelques règles pour utiliser TypeScript efficacement. Activer le mode strict dans tsconfig.json, ce qui rend obligatoires les checks de null et d'undefined. Préférer les types et interfaces aux any, qui annulent l'intérêt du typage. Utiliser Zod ou Valibot pour valider les données entrantes (API, formulaires, payload de webhook) et inférer le type depuis le schéma. Décrire les retours d'API avec OpenAPI ou GraphQL pour générer les types automatiquement. Éviter la sur-ingénierie : un type union de string suffit souvent là où certains construisent une hiérarchie complexe.
Les pièges à éviter
Quatre pièges classiques. Le first : abuser du any pour faire taire le compilateur, ce qui transforme TypeScript en JavaScript déguisé. Le second : caster avec as sans validation, ce qui ment au compilateur mais pas au runtime, et les erreurs explosent à l'exécution. Le troisième : sur-typer des choses simples avec des génériques imbriqués, ce qui rend le code illisible. Le quatrième : ne pas mettre à jour les types après un changement d'API. La discipline minimale : pas de any sans commentaire justificatif, pas de cast sans validation, et tsc --noEmit en CI pour bloquer les erreurs.