Microsoft dévoile la version 1.0 de TypeScript
Son sur-ensemble de JavaScript
Le 2014-04-04 13:28:14, par Hinault Romaric, Responsable .NET
Microsoft a annoncé lors de la conférence Build la sortie de la version finale de TypeScript, son préprocesseur qui ajoute un typage statique et optionnel au langage JavaScript.
Après plus de trois ans de développement sous la direction d’Anders Hejlsberg, le père du langage C#, TypeScript atteint sa première version et s’ouvre aux contributions de la communauté de développeurs.
TypeScript est disponible comme un langage de première classe dans Visual Studio, et est supporté par l’EDI à même titre que C# ou encore VB.NET. Il est embarqué par défaut dans Visual Studio 2013 et Visual Studio Web Express 2013 Spring Update, dont la Release Candidate a été publiée parallèlement par Microsoft, et permet de bénéficier de Intellisense, des fonctions de navigation et de toute la productivité qu’offre l’éditeur de code de Visual Studio.
TypeScript en action dans Visual Studio 2013
Pour les utilisateurs d’autres environnements de développement, Microsoft met à disposition TypeScript comme un package NPM (Node.js) et son code source est disponible sur GitHub.
Télécharger TypeScript pour Visual Studio 2012
Télécharger le package NPM de TypeScript
Le code de TypeScript sur CodePlex
Source : Microsoft
Et vous ?
Avez-vous testé TypeScript ? Qu'en pensez-vous ?
Après plus de trois ans de développement sous la direction d’Anders Hejlsberg, le père du langage C#, TypeScript atteint sa première version et s’ouvre aux contributions de la communauté de développeurs.
TypeScript est disponible comme un langage de première classe dans Visual Studio, et est supporté par l’EDI à même titre que C# ou encore VB.NET. Il est embarqué par défaut dans Visual Studio 2013 et Visual Studio Web Express 2013 Spring Update, dont la Release Candidate a été publiée parallèlement par Microsoft, et permet de bénéficier de Intellisense, des fonctions de navigation et de toute la productivité qu’offre l’éditeur de code de Visual Studio.
TypeScript en action dans Visual Studio 2013
Pour les utilisateurs d’autres environnements de développement, Microsoft met à disposition TypeScript comme un package NPM (Node.js) et son code source est disponible sur GitHub.
Source : Microsoft
Et vous ?
-
DelphiManiacMembre émériteTotalement inutile ces C, C++, Delphi, C#, VB, Python, Php, ... (la liste pourrait être longue) si c'est pour pondre du code machine à la fin, autant coder directement en code machine et en binaire. Je ne parle même pas de l'assembleur qui n'est là que pour les fainéants qui ne mémorise pas la valeur binaire de chaque instruction processeurs. Rien ne vaut un bon JMP, JNE ou JE, oups pardon je suis trop haut niveau là (11101011, 01110101, 01110100).
Tu as vu, moi aussi je peut dire des grosses bêtises.le 04/04/2014 à 18:27 -
DonQuicheExpert confirméLe typage fort réduit la fréquence des bogues et permet de meilleurs outils. Ceci est objectif, indiscutable et très significatif. On peut en revanche débattre de son impact sut la productivité, c'est une autre affaire, fonction de la taille et de la nature du projet, et sujette à débat. Mais qualifier le typage fort de "totalement inutile"... Tu parlais d'âneries il me semble ?le 04/04/2014 à 15:31
-
ptah35Membre éclairéJe ne pense pas qu'il ait là un raisonnement par l'absurde. La comparaison me parait pertinente. Javascript, qu'on le veuille ou non est le seul langage supporté par la quasi-totalité des navigateurs et comme il est peu probable que cela change dans un avenir proche, il faut bien faire avec. Mais "faire avec" signifie seulement que le programme téléchargé par le navigateur doit être écrit en Javascript, cela ne signifie pas que le développeur de ce programme soit obligé de le rédiger dans ce langage.
Typescript, Coffeescript, Java (avec GWT) sont des langages de programmation à part entière qui peuvent être compilés en Javascript (un autre langage de programmation à part entière). La compilation en Javascript n'a d'ailleurs rien de particulier et ces langages peuvent --- et de fait, certain le sont --- être compilés dans d'autres langages. La compilation consiste à utiliser un programme pour traduire un programme écrit dans un langage source en un programme équivalent écrit dans un langage cible; le langage cible ne doit pas forcément être un langage machine. (A ce propos, le PHP qui est écrit en C n'est pas le langage, mais le programme de traduction et/ou d'exécution.)
Je n'ai rien contre Javascript et j'ai plaisir à développer avec ce langage, mais je conçois volontiers que d'autres aient un avis différent et il n'y a aucune raison pour que ceux-ci soient obligés d'utiliser ce langage. En outre, même lorsque le développement se fait en Javascript, le programme source (écrit pour être lu par des humains) est rarement le même que celui qui est exécuté par le navigateur qui aura très probablement subit, au moins, une "minification". Si on peut faire confiance à un programme qui transforme un programme Javascript en un programme Javascript "minifié", pourquoi ne pas faire confiance à un programme qui transforme un programme en langage X en un programme Javascript ("minifié" ou non).le 05/04/2014 à 11:27 -
tomlevRédacteur/ModérateurJe ne vois pas le rapport. TypeScript est un langage (qui est "transpilé" en JS, au même titre que CoffeeScript par exemple), alors que jQuery est une bibliothèque.le 05/04/2014 à 10:59
-
anthymeMembre éprouvé@jojosbiz
Sauf que Typescript propose une solution aujourd'hui compatible avec l’intégralité du code js existant là ou dart est un monde a part et doit faire des connecteurs lourds à maintenir.
Je l'utilise sur 2 projets réel depuis les previews et le gain en solidité de code notamment vis a vis des refactoring est vraiment appréciable.
Ensuite vous pouvez avoir du javascript pur très solide aussi ... S'il est fortement couvert par des tests unitaires, et c'est encore rarement le cas sur les personne faisant pas mal de javascript.
Personnellement je ne mets pas des classes dans tous les sens, j'aime aussi la flexibilité de la programmation fonctionnelle de Javascript et de ses nested function.
Par contre pour ce qui est de la découverte des types dans l'IDE, la protection des erreurs à la compilation, les modules, les lambda, les interfaces c'est le top.le 04/04/2014 à 17:11 -
Traroth2Membre émériteSi on va par là, le seul code exécuté au niveau du processeur est du code machine, hein. Qu'un processeur n'est pas capable d'exécuter directement du Javascript est une évidence. Pas plus que du C ou du Java, d'ailleurs.le 09/04/2014 à 10:54
-
gretroMembre avertiJe ne suis pas d'accord avec toi pour plusieurs raisons. De un, il est bien évidemment possible de faire des applications Web (ou autre) en Javascript pur. Le problème devient cependant la maintenabilité. Pour faire un peu d'interactivité à gauche à droite, il est probablement mieux de faire du Javascript pur, à l'aide d'une librairie telle que jQuery. Cependant, quand tu commences à faire des apps avec des framework comme Angular, Ember ou Knockout (bref, avec un pattern MVC/MVVM), on se rend compte que ça devient vite un foutoir.
C'est dans ces cas où l'utilisation de Typescript, Dart ou CoffeeScript devient intéressante, car l'application devient alors structurée comme une application en POO classique. Bref, ça devient très utile et beaucoup lisible.
Bref, une bonne nouvelle pour Typescript que j'aimais bien après l'avoir essayé. Il manquait cependant le mot-clef protected et un moyen facile de faire référence à this de manière consistante (sans passer par la technique self par exemple).le 04/04/2014 à 15:45 -
I_PnoseMembre chevronnéPour y être actuellement confronté, je ne peux qu'appuyer les propos de Greto (très fortement).
Et pourquoi tu veux absolument nous faire développer un nouveau langage puisqu'en l’occurrence TypeScript apporte des réponses à certains manquements de Javascript. Bref, que tu n'y vois aucune utilité, soit, mais je peux t'assurer que l'intérêt d'une telle "surcouche" n'est pas null pour tout le monde.le 04/04/2014 à 17:01 -
regis.portalezMembre habituéCe n'est pas taillant les oreilles en pointe à un âne qu'on en fait un cheval de course...
J'utilise typescript depuis la version 0.8.3 (depuis à peu près un an), et je peux dire que ça change vraiment la vie.
Je suis d'accord pour dire que ça ne sert à rien pour faire un widget de 20 lignes, mais quand tu commences à avoir plusieurs dizaines de milliers de lignes et un grosse équipe (genre 6-7 devs), c'est vraiment très important d'avoir du static typing et de l'autocompletion correcte. Avant j'étais sur un gros projet en js pur, et quand tu veux refactor un truc un peu compliqué, c'est vraiment la m***... Le typing aide complètement.
Il aide aussi à la généricité (interfaces et autres).
Dart et Coffeescript sont aussi de très bonnes initiatives sur le sujet, mais l'avantage de typescript, c'est que le code génére ressemble au code que tu écris vraiment (ce qui rend le debogage plus facile, même sans sourcemap), que les types sont optionels, ce qui rend plus facile la migration d'une base de code existante.
Ce qui manque encore à typescript c'est protected (complètement d'accord), et sans doute un peu de tooling refactor/tests/coverage...le 14/04/2014 à 13:47 -
PaleoMembre éclairéBonjour, je me permets de signaler un projet personnel : Wot, un framework léger pour TypeScript. Je le développe depuis plusieurs mois. Il est rapide à appréhender. L'objectif est d'organiser le code de la vue afin qu'il devienne réutilisable. Avec Wot la vue est faite de composants imbriqués, par exemple un composant "List" fait de composants "Item". Chaque composant est une "boite noire" réutilisable qui encapsule du code JS (produit par TS), des templates en HTML et du code CSS. J'accueillerai avec plaisir les remarques, critiques, questions…le 25/05/2014 à 11:50