BT

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

par Jeff Martin , traduit par Philippe Charrière le 29 juil. 2013 |

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.

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

Contenu Éducatif

Rien ne serait possible sans le soutien et la confiance de nos Sponsors Fondateurs:

AppDynamics   CloudBees   Microsoft   Zenika
Feedback Général
Bugs
Publicité
Éditorial
InfoQ.com et tous les contenus sont copyright © 2006-2014 C4Media Inc. InfoQ.com est hébergé chez Contegix, le meilleur ISP avec lequel nous ayons travaillé.
Politique de confidentialité
BT