
Le nouveau dart2js permet de produire du code JavaScript plus compact et rapide grâce notamment à une innovation inédite appelée « global type inferencing ». Avec cette dernière, le compilateur en analysant entièrement du code Dart, produit un équivalent JavaScript plus compact et performant, dans lequel sont éliminées les lignes contenant les mots clés « Bailout », « typeof » ajoutées par l’ancien compilateur. De plus, ce nouveau compilateur change les boucles While en boucles For et les appels de fonctions sont remplacés par les champs d’accès.
Par ailleurs, on note également que dart2js gère mieux les dépassements de capacité de liste. En effet, là où JavaScript retourne une valeur indéfinie, Dart lève une exception qui sera utilisée par le compilateur pour générer un code qui avertirait le programmeur si celui-ci voulait avoir accès à un élément d’une liste de rang supérieur à sa taille totale.
En outre, des bancs d’essai ont été réalisés avec du code JavaScript généré par ce nouveau compilateur et leur équivalent idiomatique dans le moteur JavaScript V8 de Google. Il en ressort que le code généré par le compilateur est un poil plus performant que son équivalent idiomatique.

Nicolas Geoffray, contributeur du projet dart2js montre dans une vidéo de nombreux exemples de code Dart traduit en JavaScript par l’ancien compilateur et le nouveau avec son innovation inédite.
[ame="http://www.youtube.com/watch?v=rbLkYlbEZ1E"]Dart2js[/ame]
L’objectif de Google avec Dart est de proposer une alternative au langage JavaScript, qui offre la même flexibilité que celui-ci, mais qui se distingue par son typage fort et optionnel. Il est vu comme un JavaScript-killer. Mozilla propose également asm.js, un sous-ensemble restreint du JavaScript qui écarte tous les éléments complexes qui limitent les possibilités d'optimisation. Quant à Microsoft, TypeScript a été développé comme un sur-ensemble de JavaScript pour l’optimiser.
Preuve que JavaScript a de gros manquements, mais demeure cependant un langage clé ?

Source : Google
Vous avez lu gratuitement 2 926 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.