WebAssembly
Web & Technologie

L’alternative au Javascript : WebAssembly

WebAssembly a été mis au point au cours de l’année 2015 par des développeurs de Google, de Mozilla Foundation, de Microsoft, de W3C et de Apple. La dernière version est celle 1.0 qui date du 18 octobre 2017. De quoi s’agit-il concrètement ? Est-elle une alternative au Javascript ou son remplaçant ? Quels sont les usages possibles ainsi que ses différents avantages ?

Qu’est-ce que Web Assembly ?

Il s’agit d’une architecture de jeu d’instructions virtuel doté de plusieurs cas d’utilisation possibles. Ce nouveau type de code peut être réalisé dans un navigateur web de type moderne. Il peut en effet être intégré dans plusieurs environnements variés permettant ainsi d’obtenir sur le net de réelles applications de hautes performances. Le code est conçu afin d’être facile à contrôler et à déboguer au niveau des navigateurs Web. Web Assembly est un langage de bas niveau. Il ressemble à son assembleur et permet ainsi d’atteindre de réelles performances assez voisines des applications dites natives tout en avançant sur l’internet. Web Assembly est créé pour fonctionner en harmonie avec JavaScript. C’est donc une avancée notoire de la plateforme web.

Les avantages de Web Assembly

Web Assembly permet de réaliser un code sur le net avec des performances analogues à des applications natives. Il est possible d’utiliser les modules écrits en wasm au niveau des programmes JavaScript. Cela est rendu possible grâce au système de modules d’ES6. Web Assembly possède un accès au DOM et un garbage collector. Ces représentations du code sont rendues possibles que ce soit par représentation binaire pour une exécution ou soit par représentation textuelle pour effectuer la lecture. Il ne s’agit point d’un langage d’assemblage car le backend wasm est présenté pour le compte de LLVM au départ. Il est possible de générer assez facilement un code wasm avec option grâce à C/C++. Il est ensuite rendu disponible pour d’autres langages. Le Web Assembly est un polyfill, c’est-à-dire un programme JavaScript qui permet de faire la conversion du code wasm en asm.js pour le compte des anciens navigateurs qui en principe ne supportent point le code wasm.

Web Assembly une véritable alternative au Javascript

Il a été conçu pour être utilisé en complément de JavaScript. Sur la base de l’API JavaScript WebAssembly, il est possible de charger tous les modules Web Assembly dans l’enceinte d’une application JavaScript d’une part et de partager d’autre leurs fonctionnalités réciproques. Cela constitue une opportunité pour tirer véritablement parti des différentes performances de Web Assembly ainsi que de la flexibilité de JavaScript. On n’a pas forcément besoin donc de savoir écrire le code Web Assembly. Il permet à toutes les applications assez complexes de tourner de manière optimale sur un navigateur. Il peut s’agir des jeux vidéo en immersion version 3D, de l’édition de vidéo, du design informatisé ou de la visualisation scientifique.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *