TypeScript 2.2 ajoute le type Object et se veut plus en phase avec React Native
Nouvelles code actions en prime
Le 23 février 2017 à 15h00
2 min
Logiciel
Logiciel
Le langage TypeScript de Microsoft est désormais disponible en version 2.2. La nouvelle mouture se concentre tout particulièrement sur un meilleur support du framework React Native de Facebook, ajoute de nouvelles corrections rapides de code et officialise le type object.
TypeScript est, comme son nom l’indique, un langage de script. Il s’agit d’un surensemble de JavaScript, est totalement compatible avec ce dernier, et se destine à la gestion de gros projets. Open source (avec environ 150 contributeurs), il bénéficie d’un succès grandissant, au point d’ailleurs d’avoir été choisi par Google comme voie royale pour son Angular 2. Contrairement à JavaScript, il est transpilé de manière statique, ses erreurs étant vérifiées à la compilation, non à l’exécution.
Compatibilité React Native et outils
La nouvelle version 2.2 commence par s’accommoder davantage du framework React Native de Facebook. Elle propose un nouveau mode émission, react-native, sorte de combinaison entre les modes preserve et react. Il émet ainsi des fichiers .js, mais sans toucher à la syntaxe JSX. Pratique, selon Microsoft, quand on se sert de React Native, puisque ce dernier attend en entrée des fichiers .js.
L’éditeur présente également une amélioration des outils pour TypeScript, que l’on peut retrouver dans n’importe quel éditeur via un plug-in spécifique. La version 2.2 introduit ainsi de nouvelles « code actions », en fait des corrections rapides que le développeur peut appliquer : les importations et propriétés manquantes, this.
oublié aux variables, le retrait des déclarations inutilisées et l’implémentation des membres abstraits.
Type object, new.target et mixin
TypeScript 2.2 ajoute en outre un nouveau type, baptisé object. Il correspond en fait à tous les types, sauf aux primitives. Traduction, le développeur peut lui affecter ce qu’il souhaite, sauf string
, boolean
, number
, symbol
, null
et undefined
, ces deux derniers dans le cas où strictNullChecks
est utilisé.
Parmi les autres nouveautés de la version 2.2, signalons l’implémentation de la méta-propriété new.target
. Cette fonctionnalité prévue dans ES2015 permet aux constructeurs de deviner si une sous-classe est en cours de construction, alors qu’ils ne peuvent normalement accéder à this
avant d’appeler la méthode super()
. En outre, la nouvelle mouture comprend mieux le modèle mixin.
TypeScript 2.2 ajoute le type Object et se veut plus en phase avec React Native
-
Compatibilité React Native et outils
-
Type object, new.target et mixin
Commentaires (12)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 23/02/2017 à 17h14
Parmi les autres nouveautés de la version 2.2, signalons l’implémentation de la méta-propriété new.target. Cette fonctionnalité prévue dans ES2015 permet aux constructeurs de deviner si une sous-classe est en cours de construction, alors qu’ils ne peuvent normalement accéder à this avant d’appeler la méthode super().
= hideuse magouille pour outrepasser les règles de l’orienté-objet.
Berk.
Le 23/02/2017 à 17h24
Ça tombe bien, il est prototypal le langage :p
Le 23/02/2017 à 17h57
Le 23/02/2017 à 22h02
Le 23/02/2017 à 22h04
@brazomyna, ou le message récursif. C’est presque beau.
S’il n’a absolument pas la puissance de Self (http://handbook.selflanguage.org/4.5/intro.html), le système d’objets de javascript est bien inspiré de ce langage. Avant ES2015 il n’y avait même pas de déclaration “class”.
Le 23/02/2017 à 22h18
Je savais bien que je pigerai moins de 10% de l’article en le lisant… et pourtant je suis allé jusqu’au bout :)
Le 23/02/2017 à 23h00
Le 24/02/2017 à 07h26
J’ai fait la même, le troisième paragraphe m’a achevé.
Le 24/02/2017 à 07h35
Le 24/02/2017 à 08h22
C’est une standardisation du principe et un gain pour le développeur qu’ils viennent de C++/Java/C# ou d’ailleurs. Il n’y a pas d’opposition ni de rigidité…
Le 24/02/2017 à 10h18
TypeScript est super, impossible de revenir en arrière : GitHubMais tout n’est pas rose, il y qqs fonctionnalités manquantes et des régressions :
- GitHub- GitHub- GitHub
Le 24/02/2017 à 20h49
Wahou il a utilisé le mot règle au lieu de principe, ça mérite au moins la peine de mort… C’est plutôt à vous que le français a l’air de poser problème.