Les principaux éditeurs de navigateurs se mettent ensemble pour créer une nouvelle technologie d’exécution de code, permettant de créer des applications Web encore plus complexes.







Mozilla, Microsoft, Google et Apple viennent de lancer un nouveau projet qui pourrait bien annoncer une nouvelle ère du Web. Baptisé « WebAssembly », son but est de doter les navigateurs d’une technologie permettant d’accélérer considérablement l’exécution des logiciels. Le principe retenu est celui du « bytecode », c'est-à-dire un code intermédiaire entre le code source écrit par le développeur et les instructions machines que peut exécuter un processeur.
L’avantage, c’est que ce type de code peut être traité beaucoup plus rapidement que, par exemple, un code Javascript. Celui-ci fait partie de la famille des langages interprétés, ce qui signifie que le code écrit par le développeur est envoyé tel quel au navigateur qui, grâce à son compilateur intégré, le convertit à la volée en code exécutable. D’après les membres du projet WebAssembly, l’exécution d’un « bytecode » serait 20 fois plus rapide que du Javascript, même dans sa version la plus optimisée (en occurrence asm.js). De quoi faire saliver beaucoup de fournisseurs de services Web, surtout quand il s’agit de proposer des fonctionnalités avancées sur les terminaux mobiles.
Eviter le cloisonnement

En réalité, le « bytecode », ce n’est pas vraiment nouveau sur Internet. Il existe déjà de nombreux spécimens sur la Toile, plus ou moins vivants : Java, .NET, Adobe Flash... Certes, ces programmes peuvent s’intégrer dans une page Web, mais les interactions avec celle-ci restent finalement assez limitées, avec à la clé un certain cloisonnement pas très pratique. C’est un peu pour cette raison que les développeurs se sont tournés vers JavaScript, un langage non seulement facile à utiliser mais aussi totalement intégré dans l’environnement web.
Avec WebAssembly, les géants high-tech veulent avoir le meilleur des deux mondes : un code qui s’exécute rapidement ET une forte intégration dans l’environnement Web. Ainsi, il est prévu que les programmes WebAssembly pourront dialoguer sans problème avec les modules JavaScript d’une page, et cela de manière synchrone. Ils pourront également accéder aux fonctionnalités du navigateur au travers des mêmes interfaces de programmation que celles utilisées par JavaScript. Et, bien sûr, WebAssembly serait intégré de manière native dans tous les navigateurs. Il n’y aurait donc pas besoin de télécharger de plugins ou d’extensions embarrassantes.
Pour l’instant, tout ceci n’est évidemment qu’une projection vers le futur. Le projet vient à peine d’être lancé et son chemin vers la standardisation est encore long. Mais le fait qu’il regroupe d’ores et déjà les principaux éditeurs de navigateurs est plutôt un gage d’avenir.