BT

Nouveau Early adopter ou innovator ? InfoQ a travaillé sur de nouvelles fonctionnalités pour vous. En savoir plus

La dernière version de TypeScript apporte les Génériques

| par Jeff Martin , traduit par Philippe Charrière le 29 juil. 2013. Durée de lecture estimée: 2 minutes |

Microsoft a annoncé la sortie de TypeScript 0.9. Cette version apporte plusieurs nouvelles fonctionnalités, avec en tête de liste la possibilité d'utiliser les Génériques (Generics). TypeScript représente la tentative de Microsoft de rendre JavaScript plus adapté au développement d'applications à grande échelle, en intégrant la vérification de type et l'analyse statique de code.

Les nouvelles fonctionnalités marquantes :

  • Le support des génériques. Cette fonctionnalité populaire apportée à TypeScript permet une meilleure vérification de type et d'utiliser des modèles (patterns) de programmation modernes.
  • La surcharge sur les constantes
  • Le support de export = pour l'importation directe des classes
  • Les Enums
  • TypeScript 0.9 - Remanié pour supporter la croissance future du langage. Des améliorations ont été apportées afin de mieux supporter la compilation incrémentale, apporter la capacité à gérer de grosses bases de code (> 100 000 lignes), ainsi que la correction de plus de 160 erreurs signalées sur CodePlex.

Une intéressante table ronde avec les membres de l'équipe TypeScript, dont Anders Heljsberg, Steve Lucco et Luke Hoban, a été récemment publiée par Channel 9. La conversation a fourni des informations supplémentaires sur les nouvelles fonctionnalités de cette version 0.9. Hoban a fait observer que le support des génériques dans TypeScript offrait des avantages même s'ils n'étaient pas utilisés directement par le programmeur. Ceci s'explique par le fait que le support des génériques dans TypeScript permet d'améliorer les performances de l'IntelliSense et d'aider à la vérification des erreurs.

Hejlsberg a donné l'exemple suivant lors de la discussion pour faire la démonstration des changements entre la version 0.8 et la version 0.9 :

var a = [ "hello", "world", "..." ]
var n = a.map( s => s.length)
(where n is an array of numbers)

TypeScript 0.8:  s.   <- L'IntelliSense ne montre rien
TypeScript 0.9:  s.   <- L'IntelliSense propose la complétion, dont length

Hejlsberg a également souligné que l'implémentation des génériques dans TypeScript est similaire à celle de Java, et non à celle de C#. C'est en partie parce que l'un des objectifs de TypeScript est de produire un code lisible. Aussi, des fonctionnalités comme le support de l'asynchronisme ne sont actuellement pas développées par l'équipe car, compte tenu des limitations actuelles de JavaScript, leur support impliquerait un code trop complexe (IcedCoffeeScript a été donné comme exemple de ce que l'équipe essayait d'éviter quant à l'approche de TypeScript en matière de génération de code). Si JavaScript pouvait bénéficier du support des itérateurs (iterators) et des générateurs (generators), alors cela permettrait à TypeScript de fournir un support de l'asynchronisme garantissant un code "lisible par l'homme". Les futures mises à jour de JavaScript pourraient rendre ceci possible.

Evaluer cet article

Pertinence
Style

Bonjour étranger!

Vous devez créer un compte InfoQ ou cliquez sur pour déposer des commentaires. Mais il y a bien d'autres avantages à s'enregistrer.

Tirez le meilleur d'InfoQ

Donnez-nous votre avis

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet
Commentaires de la Communauté

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet

Html autorisé: a,b,br,blockquote,i,li,pre,u,ul,p

M'envoyer un email pour toute réponse à l'un de mes messages dans ce sujet

Discuter

Se connecter à InfoQ pour interagir sur ce qui vous importe le plus.


Récupérer votre mot de passe

Follow

Suivre vos sujets et éditeurs favoris

Bref aperçu des points saillants de l'industrie et sur le site.

Like

More signal, less noise

Créez votre propre flux en choisissant les sujets que vous souhaitez lire et les éditeurs dont vous désirez suivre les nouvelles.

Notifications

Restez à jour

Paramétrez vos notifications et ne ratez pas le contenu qui vous importe

BT