TypeScript : vue d'ensemble

TypeScript est un langage de programmation open source développé par Microsoft. C’est le langage de programmation utilisé pour développer des applications avec Angular. Afin de réussir pleinement avec Angular, il est recommandé de maîtriser TypeScript.

Dans cet article, nous allons faire un tour rapide de TypeScript en abordant les points suivants :

  • Qu’est-ce que TypeScript ?
  • Pourquoi développer avec TypeScript ?
  • Pourquoi ne pas utiliser TypeScript ?

Qu’est-ce que TypeScript ?

TypeScript est un surensemble, une extension de JavaScript.

TypeScript est un langage de programmation qui se compile en JavaScript. C’est un surensemble, une extension de JavaScript, ce qui signifie que tout code valide en JavaScript est également valide en TypeScript. TypeScript permet d’écrire des applications côté client pour le navigateur, des applications côté serveur avec Node.js et tout type d’application basée sur du JavaScript.

TypeScript est un langage de programmation avec du typage statique.

TypeScript est un langage de programmation fortement typé. Le typage statique signifie que la vérification des types s’effectue avant l’exécution du code, lors de la phase de compilation. Ceci permet de détecter les erreurs de typage avant l’exécution du programme.

Le typage en TypeScript est cependant optionnel et nous n’avons pas besoin d’annoter tous les objets avec leur type. TypeScript prend en charge l’inférence de type qui lui permet de générer automatiquement les types de nos variables en fonction de leurs valeurs. Par exemple les bouts de code suivants sont équivalents en TypeScript :

const value = 'Bonjour, TypeScript !';
const value: string = 'Bonjour, TypeScript !';

TypeScript est un compilateur

Les navigateurs et la plupart des interpréteurs JavaScript n’exécutent pas directement le code TypeScript. Une phase de compilation est nécessaire pour transformer le code TypeScript en code JavaScript. TypeScript fournit un compilateur (tsc) qui effectue cette transformation via une interface en ligne de commande.

Compilation ou Transpilation ? On parle souvent de transpilation au lieu de compilation pour décrire la transformation du code TypeScript en JavaScript. Pour être plus précis, il faudrait utiliser le terme transpilation qui est le fait de compiler un code source d’un langage à un autre autre.

TypeScript est un serveur de langage

TypeScript est livré avec un serveur de langage (language server, en anglais) utilisé par les éditeurs de texte tels que VS Code pour implémenter des fonctionnalités telles que l’autocomplétion, les diagnostics, la navigation dans le code, etc. Si vous utilisez VS Code pour écrire du code JavaScript, vous utilisez indirectement TypeScript, car l’éditeur utilise le serveur de langage TypeScript pour gérer tout code JavaScript.

Pourquoi TypeScript ?

Dans cette section, nous allons examiner les raisons pour lesquelles TypeScript est un excellent choix pour le développement de vos applications.

TypeScript rend votre code plus robuste

Le typage statique de TypeScript permet de détecter beaucoup d’erreurs lors de la compilation et pas au moment de l’exécution. TypeScript permet qu’une large partie des bugs soient détectés par le développeur avant que son code parte en production et qu’il soit utilisé par les utilisateurs finaux.

TypeScript rend votre code plus compréhensible

Coder c’est aussi communiquer avec les autres. Les types sont des indications pour les développeurs qui vont lire votre code et représentent de la documentation supplémentaire. TypeScript facilite ainsi la compréhension du code pour le lecteur.

TypeScript améliore l’aide fournie par les éditeurs

Grâce au serveur de langage de TypeScript, les éditeurs ont une meilleure compréhension de votre code. Les éditeurs vous offre une meilleure expérience Développeur avec des fonctionnalités comme :

  • L’autocomplétion pour écrire du code plus rapidement.
  • La refactorisation du code en toute sécurité.
  • La mise en surbrillance des erreurs.

Une adoption incrémentale de TypeScript est possible

Tout code JavaScript étant valide en TypeScript, vous n’avez pas à migrer l’intégralité de votre code JavaScript vers TypeScript avant de commencer à coder en TypeScript. Vous pouvez adopter TypeScript de façon incrémentale en changeant l’extension de vos fichiers de .js en .ts puis rajouter du typage au fur et à mesure.

TypeScript vous offre les nouveautés de ECMAScript en avance de phase

TypeScript vous permet d’utiliser les nouvelles fonctionnalités ECMAScript avant même qu’ils soient disponibles officiellement en JavaScript. Dès qu’une fonctionnalité atteint le stage 4 (le stage final) de la spécification ECMAScript, TypeScript a tendance à l’incorporer rapidement dans le langage. Ces fonctionnalités TypeScript seront compilées vers du code JavaScript équivalent et compatible.

ECMAScript est le standard qui définit le langage JavaScript. Toute nouvelle fonctionnalité JavaScript passe par 4 stages avant d’être incluse dans le langage. Pour en savoir plus, vous pouvez visiter le site https://tc39.es.

Vos compétences TypeScript iront au-delà d’Angular

Même si TypeScript est devenu populaire grâce à son adoption par le framework Angular, aujourd’hui la plupart des autres frameworks en ont fait leur langage privilégié. Vos compétences TypeScript iront donc au-delà d’Angular. De plus, TypeScript est devenu une compétence indispensable sur le marché de l’emploi. Si vous êtes un développeur Frontend, ne pas maitriser TypeScript risquerait de vous de handicaper sérieusement votre employabilité.

Pourquoi ne pas utiliser TypeScript ?

Toute technologie a ses avantages et ses inconvénients. Même si TypeScript à mon avis a peu d’inconvénients, il faudrait qu’on en parle.

TypeScript rajoute une phase de compilation

TypeScript nécessite une phase de compilation qui rajoute donc une étape supplémentaire entre l’écriture du code et son exécution. Il y a donc un temps de mise en place à prévoir lorsqu’on démarre un nouveau projet TypeScript. Heureusement que des outils comme l’Angular CLI sont là pour s’occuper de cette mise en place automatiquement.

Le code TypeScript peut devenir compliqué à lire

Le code TypeScript peut parfois devenir verbeux et difficile à lire si vous essayez de faire des choses complexes comme l’utilisation abusive des génériques ou de l’héritage.

Conclusion

Dans cet article, nous avons fait un tour d’ensemble de TypeScript. Nous avons vu que c’est un langage de programmation qui a beaucoup d’avantages et très peu d’inconvénients par rapport au JavaScript. Cela fait de TypeScript, aujourd’hui, le langage principal du web.


Vous aimez ce blog ?
Suivez-moi sur Twitter pour plus de contenu !

Rejoignez la newsletter pour du contenu de grande qualité dans votre boite mail

Pas de spam. Que du contenu de qualité.