Projet Corsa : TypeScript propulsé par 10 grâce à une compilation native en Go

dragon webnet
Accueil  >  Projet Corsa : TypeScript propulsé par 10 grâce à une compilation native en Go

Suivez-nous !

Webnet à la pointe de l'innovation TypeScript : focus sur le projet Corsa

Chez Webnet, nous accordons une importance capitale aux outils et aux évolutions qui améliorent la productivité de nos développeurs. C'est pourquoi nous suivons avec grand intérêt le projet Corsa, une initiative ambitieuse portée par Anders Hejlsberg, l'architecte en chef de TypeScript chez Microsoft.

L'objectif de ce projet ? Révolutionner les performances de TypeScript en portant son compilateur en natif.

 

Pourquoi une compilation native pour TypeScript ?

Depuis plus de dix ans, le compilateur TypeScript est développé en TypeScript/JavaScript. Bien que cette approche ait permis une adoption et une flexibilité importantes, elle présente des limitations intrinsèques en termes de performance et de gestion de la mémoire, particulièrement pour les projets de grande envergure. JavaScript, malgré ses nombreuses qualités, montre ses limites lorsqu'il s'agit de gérer des compilateurs complexes.


Le choix stratégique de Go pour des performances optimales

Afin de surmonter ces limitations, l'équipe derrière le projet Corsa a exploré plusieurs langages (C, C++, Rust...). Finalement, Go s'est imposé comme le choix idéal grâce à ses avantages clés :

  • Code natif optimisé : go compile en code machine natif, offrant des performances supérieures sur toutes les plateformes.
     
  • Gestion de la mémoire efficace : le garbage collector de Go assure une gestion de la mémoire performante, cruciale pour les gros projets.
     
  • Concurrence facilitée : l'architecture de Go facilite la gestion de la concurrence, un aspect important pour l'optimisation des compilateurs.

Des gains de performance impressionnants : les chiffres parlent d'eux-mêmes

Les premiers résultats du projet Corsa sont spectaculaires. En compilant le code source de Visual Studio Code (un projet de 1,5 million de lignes), les gains de performance sont significatifs :

  • Ancien compilateur (JavaScript) : environ 1 minute.
  • Nouveau compilateur natif (Go) : seulement 5,5 secondes ! 🚀

Le redémarrage du Language Service, essentiel pour l'expérience de développement dans les IDE (sur un projet de 4 500 fichiers), bénéficie également de cette amélioration :

  • Ancien Language Service (JavaScript) : plusieurs secondes.
  • Nouveau Language Service natif (Go) : environ 3 secondes.

Les bénéfices concrets pour les développeurs Webnet et la communauté

Cette avancée majeure aura un impact direct et positif sur la productivité des développeurs TypeScript :

  • Temps de chargement et de compilation divisés par 10 : des cycles de développement beaucoup plus rapides.
  • Réactivité accrue des IDE : une expérience de développement plus fluide et agréable grâce à un Language Service plus performant.
  • Modernisation des IDE via LSP : l'adoption de l'architecture Language Server Protocol (LSP) permettra de moderniser les IDE et d'améliorer l'intégration des outils.

Conclusion : un avenir prometteur pour le développement TypeScript

Le projet Corsa représente une avancée significative pour la productivité des développeurs TypeScript. Chez Webnet, nous sommes impatients de voir comment cette initiative transformera l'écosystème TypeScript et nous nous tenons prêts à intégrer ces améliorations pour offrir à nos équipes et à nos clients des solutions toujours plus performantes.
Pour en savoir plus, vous pouvez consulter l'annonce officielle de Microsoft : https://devblogs.microsoft.com/typescript/typescript-native-port/
 

Web Web

La création ou la refonte d’un site web de qualité est une étape clé de transformation digitale. Du site vitrine à la boutique en ligne ouverte 24h/24, en passant par un portail collaboratif, Webnet, imagine et développe des sites web visibles, attractifs et performants. 

En savoir +
Infogérance Infogérance

Pérennisez le patrimoine applicatif de votre entreprise en faisant appel à nos services d’infogérance. En complément de nos autres solutions ou pour reprendre la maintenance de vos outils, nous mettons tout en œuvre pour renforcer la scalabilité de votre organisation. 

En savoir +
Vous avez un projet ?

Refonte de votre système d’information, développement de votre application métier, création de votre site internet, intégration de développeurs supplémentaires à vos équipes, formation de vos collaborateurs, etc. Nous répondons à tous vos besoins en matière de conseils, prestations techniques et accompagnement dans votre transformation numérique.

Contactez-nous