TypeScript 5.0 : quelles sont ses nouveautés ?

Par Walid Ghanem, le 4 mai 2023

Actualité

Le 16 mars, Microsoft a ravi les programmeurs et les aficionados des technologies web en annonçant la sortie officielle de TypeScript 5.0.

Depuis la version bêta du langage de programmation open-source signée Microsoft, les dev web attendaient une version stable avec impatience.

Ainsi, cette nouvelle version vous offre une réduction du temps de construction des modules de 10 à 15 %. De plus, les packages sont 26 % moins volumineux que ceux de la version précédente.

Mais limiter cette nouvelle version à une simple optimisation serait une erreur. Deux nouvelles fonctionnalités ont su séduire les développeurs : l’implémentation des décorateurs et le typage des paramètres via “type const”.

Voyons-les en détail.

Les décorateurs

Cher Lecteur,

En tant que développeur web, vous est-il déjà arrivé de vouloir modifier le comportement d’une fonction d’une de vos bibliothèques ? Si oui, alors vous avez dû réécrire une partie de votre code-source.

Le style de programmation orienté objet et les interfaces facilitent réduisent considérablement le nombre de lignes de codes à retoucher. Mais soyons honnêtes : développer un code en modifiant constamment ces fonctions peut vite le rendre incompréhensible.

Et c’est là qu’entre en jeu la nouvelle fonctionnalité du langage informatique TypeScript : les décorateurs.

En utilisant une technique de programmation logicielle basée sur les décorateurs, vous ne toucherez absolument pas aux lignes de codes de votre fonction.

À la place, vous en créerez une nouvelle fonction qui va « décorer » la fonction que vous ciblez.

Regardez plutôt l’exemple officiel fourni par Microsoft.

Développer une application en entremêlant les instructions d’exécution et celles de débogage comme ci-dessus est rarement une bonne idée. En le faisant, vous rendez vos scripts et librairies difficiles à maintenir pour les autres développeurs web.

Pour éviter cela, vous pouvez utiliser les décorateurs.

 

Ne trouvez-vous pas que le décorateur loggedMethod améliore grandement la lisibilité et la syntaxe du code ?

Face à une bibliothèque constituée de plusieurs milliers de lignes de code, les décorateurs peuvent faire toute la différence.

Si les décorateurs vous intéressent, ce billet de blog dédié au développement d’application en langage python est fait pour vous. Les langages de programmation sont différents, mais le principe est identique.

Le typage de paramètre constant

Même si TypeScript s’appuie sur du code JavaScript, il fait partie des langages de programmation à typage statique. Exactement comme le langage Java et le Swift.

Ce n’est que lorsqu’il est passé à l’interprète de votre navigateur internet qu’il assigne un type général aux paramètres. On parle alors de compilation, ou transcompilation.

Mais parfois, vous aurez besoin que votre application web prenne un type de données spécifique en entrée. Comment en être certain ?

Et c’est là qu’entre en jeu l’autre fonctionnalité phare de cette nouvelle version : le modificateur “const”.

Pour programmer votre fonction à ne recevoir qu’un seul type de données, ajoutez ce modificateur à la déclaration de paramètre de type. Vous indiquez ainsi au compilateur que l’unique type accepté est celui que vous avez défini lors du codage.

En spécifiant les types attendus, vous vous épargnez plusieurs heures de débogage. Côté client, vous limiterez la frustration causée par une expérience-utilisateur en réduisant les bugs.

Les autres fonctionnalités de TypeScript 5.0

TypeScript apporte aussi d’autres surprises pour les développeurs web et les utilisateurs de frameworks basés sur ce dernier. Notamment :

  • une nouvelle balise JSDOC « @Satisfies », qui vous permet de détecter les incompatibilités de type afin d’utiliser plus précisément les valeurs dans votre code ;
  • la prise en charge des formes d’exports de module “ export * from « module” et “export * as ns from « module” ;
  • la possibilité de surcharger les fonctions avec le paramètre JSDOC @overload.

Si vous souhaitez en savoir plus, rendez-vous sur le billet de blog officiel de Microsoft consacré à TypeScript 5.0.


Partager l'article

Notre blog

En savoir plus