TypeScript se rapproche de sa version 1.0
Microsoft dévoile la feuille de route de son alternative à JavaScript

Le , par Stéphane le calme, Chroniqueur Actualités
TypeScript, le préprocesseur JavaScript fait par Anders Hejlsberg, père du C#, et soutenu par la branche Open Source de Microsoft se rapproche progressivement de sa version 1.0. A cet effet, l'entreprise a décidé de de proposer un téléchargement séparé pour TypeScript dans Visual Studio contrairement à la version 0.9.1.1 qui faisait partie intégrante de Visual Studio 2013 RC.

L'option d'installation pourra donc être trouvée comme un lien dans Visual Studio lors de la création d'un nouveau projet. Mais TypeScript sera aussi disponible en téléchargement direct.

Sans pour autant en préciser les dates butoirs, Microsoft a dévoiler sa feuille de route. L'entreprise prévoit la version 0.9.5 qui améliorera l'utilisation de la mémoire et du CPU et mettra également un accent sur la correction des problèmes signalés par les utilisateurs. Par la suite une RC de 1.0 verra le jour et apportera les derniers correctifs à la stabilité et à la conformité avec les spécifications de 1.0. Enfin la version finale 1.0 sera lancée.

Les avantages que le langage apporte par rapport à JavaScript sont entre autre la gestion des classes et des modules (POO), le typage fort optionnel ( meilleure détection d'erreurs et meilleure auto-completion ) ou encore la gestion des arguments et de leurs valeurs par défaut.

Télécharger Typescript

Source : Blog MSDN

Et vous ?

Avez-vous déjà utilisé TypeScript ou une toute autre alternative à JavaScript ?

Quels sont les points qui vous séduisent le plus ?

Pouvez-vous identifier les faiblesses du langage ou les difficultés que vous avez rencontré lors de son utilisation ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse Signaler un problème

Avatar de ptah35 ptah35 - Membre éclairé https://www.developpez.com
le 21/10/2013 à 21:38
Citation Envoyé par erwanlb Voir le message

Et au final on se retrouve avec JS avec ses nombreuses rustines (framework) plutôt que de faire évoluer le langage lui même...
Est-ce que C, C++, Java, C# sont des "rustines" pour le langage machine ou l'un ou l'autre p-code? Est-ce que la bibliothèque standard du C++, le framework .NET ou J2EE sont des rustines pour le C# et le Java? Si vous répondez oui, alors en effet, TypeScript est une rustine de plus.. Mais CoffeeScript, TypeScript, GWT ne sont pas des rustines, ce sont des langages que l'on traduit en JavaScript avec un compilateur; les framework JQuery, Prototype et autre MooTool ne sont pas des rustines mais des framework destiné à faciliter le développement d'applications.

Je pense que si on devait choisir un nouveau langage de script pour les navigateur, ce n'est pas vers un langage de haut niveau comme Dart que l'on devrait aller, mais vers un langage de plus bas niveau comme le Bytecode de la JVM ou le MISL de .NET. En attendant, faire évoluer JavaScript sachant qu'il doit rester compatible, le rendrait inutilement complexe et incohérent (il y aurait encore plus de manières de faire les choses), il vaut mieux le considérer comme un langage cible et proposer de nouveaux langages (même proches). La compilation est, en outre, susceptible de produire du meilleur code JavaScript en terme de performance (optimisation, agrégation des fichiers sources et "minification".
Avatar de koyosama koyosama - Membre éclairé https://www.developpez.com
le 21/10/2013 à 23:18
Pour l'avoir utilisé, je trouve cela super.

Et le code généré n'est pas trop dégueulasse.
Avatar de DonQuiche DonQuiche - Expert confirmé https://www.developpez.com
le 22/10/2013 à 0:22
Citation Envoyé par Stéphane le calme Voir le message
Avez-vous déjà utilisé TypeScript ou une toute autre alternative à JavaScript ?
Non mais jusqu'à présent j'ai toujours fui le développement web à cause de js/php et je suis avec intérêt typescript qui pourrait me faire basculer.

Citation Envoyé par ptah35 Voir le message
Je pense que si on devait choisir un nouveau langage de script pour les navigateur, ce n'est pas vers un langage de haut niveau comme Dart que l'on devrait aller, mais vers un langage de plus bas niveau comme le Bytecode de la JVM ou le MISL de .NET.
Si seulement le W3C pouvait t'entendre...
Avatar de Traroth2 Traroth2 - Membre chevronné https://www.developpez.com
le 22/10/2013 à 11:14
Vouloir sauver le web de l'horrible Javascript est une bonne chose, mais à un moment, les promoteurs de Dart, CoffeeScript et TypeScript feraient mieux de se mettre d'accord. Sinon, soit ça va être le bordel, soit il ne se passera rien du tout et on va rester avec Javascript.

Et je suis d'accord avec erwanlb (comme quoi tout arrive...), les frameworks Javascript servent trop souvent à corriger des imperfections du langage ou de l'environnement (corriger les différences de comportement des navigateurs, par exemple). On appelle shims ou polyfills certains frameworks ou bibliothèques spécialisés dans ce type de sujet, d'ailleurs. C'est quelque chose qu'on ne voit pas en Java, C#, Objective C ou PHP.

HTML 5 a d'ailleurs encore accentué le problème, vues les différences de niveau d'implémentation entre les navigateurs. Il existe un polyfill permettant de simuler IndexedDB sur les navigateurs non-compatibles mais implémentant WebSQL. Vous imaginez le niveau de bordel ?
Avatar de elmcherqui elmcherqui - Membre averti https://www.developpez.com
le 22/10/2013 à 11:45
Typescript n'est pas un nouveau langage destiné a corriger les defaut de javascript , mais tous simplement la version Ecmascript 6 de javascript.
Typescript nous permet de profiter aujourdhui de la version ecmascript 6 de javascript en attendant qu'elle soit standart .
Et c'est d'ailleur ce qui m'a permis de l'utiliser sur des projets asp mvc avec reel succes !
Avatar de ptah35 ptah35 - Membre éclairé https://www.developpez.com
le 22/10/2013 à 13:58
Citation Envoyé par Traroth2 Voir le message
Vouloir sauver le web de l'horrible Javascript est une bonne chose, mais à un moment, les promoteurs de Dart, CoffeeScript et TypeScript feraient mieux de se mettre d'accord. Sinon, soit ça va être le bordel, soit il ne se passera rien du tout et on va rester avec Javascript.
Pourquoi est-ce que ce serait "le bordel"? Il y a un choix pléthorique de langages pour réaliser des programmes pour nos différents OS et tout ce passe bien. Un navigateur Web n'est plus juste un client HTTP, c'est une plateforme pour héberger la partie cliente d'une application Web. JavaScript est supporté par tous les navigateurs, les performances sont correctes, il permets de faire ce qu'il est possible de faire dans le cadre imposé par la plateforme, pourquoi vouloir le changer à tout prix?

Changer JavaScript en supprimant ses mauvais côtés mais en gardant la compatibilité est impossible, mais changer JavaScript en gardant tous ses mauvais côtés ne résoudra rien (sans compter qu'aucun langage ne fera jamais l'unanimité, quelques soient ses qualités). En revanche, puisqu'il est équivalent à n'importe quel autre langage Turing-complet, on peux choisir de développer avec un autre langage, Java avec GWT, CoffeeScript, Dart, TrueScript, peu importe, et compiler le code vers du JavaScript.

Comme je le disais plus haut, un autre avantage à cela est qu'une phase de compilation est nécessaire et qu'on peut la liée à des opérations comme l'agrégation de fichiers et de "minification" (notez que ces deux dernières opérations devraient déjà être faites lorsque l'on développe directement en JavaScript, mais il semble que beaucoup de gens pense que dans ce cas on déploie simplement le code source dans le site web, sans aucun traitement). Si l'on ajoute à cela qu'en permettant à un programmeur d'utiliser un langage qui lui est plus familier, on évite que ce dernier ne fasse des choses horrible en JavaScript et on fini par avoir du code JavaScript de meilleure qualité et plus performant.
Avatar de Traroth2 Traroth2 - Membre chevronné https://www.developpez.com
le 22/10/2013 à 14:04
Citation Envoyé par elmcherqui Voir le message
Typescript n'est pas un nouveau langage destiné a corriger les defaut de javascript , mais tous simplement la version Ecmascript 6 de javascript.
Typescript nous permet de profiter aujourdhui de la version ecmascript 6 de javascript en attendant qu'elle soit standart .
Et c'est d'ailleur ce qui m'a permis de l'utiliser sur des projets asp mvc avec reel succes !
En cherchant un peu, je me rends compte que c'est... faux. L'apport principal de TypeScript, comme son nom l'indique, c'est le typage statique optionnel. Et ce n'est pas du tout à l'ordre du jour dans EcmaScript 6 :

http://wiki.ecmascript.org/doku.php?...armony:harmony
Avatar de elmcherqui elmcherqui - Membre averti https://www.developpez.com
le 22/10/2013 à 14:43
Citation Envoyé par Traroth2 Voir le message
En cherchant un peu, je me rends compte que c'est... faux. L'apport principal de TypeScript, comme son nom l'indique, c'est le typage statique optionnel. Et ce n'est pas du tout à l'ordre du jour dans EcmaScript 6 :

http://wiki.ecmascript.org/doku.php?...armony:harmony
Pourtant :
il c'est clairement cité ici :
http://en.wikipedia.org/wiki/TypeScr...ript_6_support

TypeScript adds support for features proposed for the upcoming ECMAScript 6 standard.

These are the constructs:

Classes (with inheritance)
Modules
Arrow function syntax
Although the standard is not ready, Microsoft has said that it aims to align TypeScript's features with the proposed standard.
et ici :
http://en.wikipedia.org/wiki/ECMAScript

ECMA-262, edition 3, 5 and features from upcoming 6.

et ici :
http://en.wikipedia.org/wiki/TypeScript
That led to a JavaScript compiler with a set of syntactical language extensions, a superset based on the proposal, that transforms the extensions into regular JavaScript. In this sense TypeScript is a preview of what to expect of ECMAScript 6.
En tous cas si je me trompe , merci pour la rectification
Avatar de DonQuiche DonQuiche - Expert confirmé https://www.developpez.com
le 22/10/2013 à 14:55
Citation Envoyé par ptah35 Voir le message
JavaScript est supporté par tous les navigateurs, les performances sont correctes, il permets de faire ce qu'il est possible de faire dans le cadre imposé par la plateforme, pourquoi vouloir le changer à tout prix?
Est-ce que tu ne trouves pas paradoxal de soutenir d'un côté une vision de l'avenir (que je partage) où la programmation web se fera avec les langages de notre choix, et de l'autre de vouloir continuer à confier à javascript le rôle de langage intermédiaire ?

Certes au prix d'efforts titanesques les éditeurs de navigateurs web ont réussi à concevoir des machines virtuelles javascript dont les performances sont étonnamment décentes. Sauf que...

* Ces performances ne sont pas satisfaisantes sur mobiles pour les besoins quotidiens et restent incompatibles avec de nombreux scénarios même sur PC. Et il semble que les moteurs javascript n'apportent plus de gains très significatifs en moyenne : nous avons atteint le plancher.

* Ce sont des moteurs extrêmement lourds et complexes. Or je vois que les éditeurs ne cessent de réécrire ces parties, sans doute parce que la complexité et le niveau d'optimisation les rendent peu maintenables et évolutifs.

* Il est très difficile pour une tierce-partie d'écrire une machine virtuelle javascript performante ce qui rend compliqué le développement de certains outils. Et le fait d'avoir deux voire trois moteurs open-source n'aide pas tant que ça car ils sont lourds et complexes, très dépendants du reste du navigateur, tous en C/C++ et les licences ne sont pas toujours compatibles.

* Une fois la compilation vers javascript réalisée toute information de typage est perdue ce qui rend impossible ou également complexe certaines analyses à l'exécution ou sur du code tiers.

Un vrai langage intermédiaire, lui, aurait bien des avantages. Pour moi en refusant ce choix on ne fait que retarder toute l'industrie en freinant certaines évolutions naturelles. Il faut dire que c'est l'intérêt de certains acteurs.
Avatar de Traroth2 Traroth2 - Membre chevronné https://www.developpez.com
le 22/10/2013 à 15:18
Citation Envoyé par elmcherqui Voir le message
Pourtant :
il c'est clairement cité ici :
http://en.wikipedia.org/wiki/TypeScr...ript_6_support

et ici :
http://en.wikipedia.org/wiki/ECMAScript

et ici :
http://en.wikipedia.org/wiki/TypeScript

En tous cas si je me trompe , merci pour la rectification
Ca veut juste dire que TypeScript contient des fonctionnalités d'EcmaScript 6, pas que c'est EcmaScript 6.

Citation Envoyé par elmcherqui Voir le message

Typescript n'est pas un nouveau langage destiné a corriger les defaut de javascript , mais tous simplement la version Ecmascript 6 de javascript
Non.
Contacter le responsable de la rubrique Accueil