Pour gérer vos consentements :
Categories: Poste de travail

WebAssembly : un palliatif pour JavaScript ?

Microsoft avec TypeScript, Google avec Native Client, Mozilla avec asm.js… Autant d’initiatives lancées ces dernières années pour apporter davantage de fonctionnalités au JavaScript ou encore accélérer son chargement sur les pages Web.

Ces trois projets sont appelés à converger au sein de WebAssembly, un nouveau format de fichier binaire qui doit permettre de compiler de nombreux langages (en tête de liste, C/C++) pour ensuite les exécuter dans les navigateurs sans affecter les performances globales.

Porté par Brendan Eich (fondateur du JavaScript et CEO éphémère de Mozilla), WebAssembly est un « bytecode », c’est-à-dire un code intermédiaire entre les applications Web et les instructions machine. Sa supervision est assurée par un groupe communautaire au sein du W3C (World Wide Web Consortium).

L’objectif n’est pas de remplacer JavaScript, mais de proposer une solution « complémentaire » qui soit « plus efficace » pour le rendu de certains éléments sur les pages Web.

Le code WebAssembly compressé serait en l’occurrence plus léger (confer le tableau ci-dessous). Et sa décompression serait jusqu’à 20 fois plus rapide par rapport à l’analyse de code asm.js – ce sous-ensemble de JavaScript exécutable à bas niveau après compilation en langage natif avec Emscripten.

JavaScript présentant l’avantage de fonctionner aussi bien sur les architectures ARM que x86, WebAssembly pourra, tout du moins dans un premier temps, y être implémenté pour exploiter ses différentes composantes, comme la sandbox pour la sécurité.

Pour assurer la transition le temps que la prise en charge de ce nouveau format soit assurée dans les principaux navigateurs Web du marché, les équipes impliquées sur le projet (PNaCl et V8 chez Google ; Edge chez Microsoft ; Emscripten et asm.js chez Mozilla…) projettent de lancer une bibliothèque qui convertira le code WebAssembly en JavaScript.

Les deux langages seront d’ailleurs sans doute – d’après Brendan Eich – amenés à coexister sur le long terme. Tout du moins jusqu’à ce que WebAssembly se soit véritablement répandu et ouvert à d’autres langages.

Crédit photo : mclek – Shutterstock.com

Recent Posts

Cybersécurité : attention aux QR codes dans les PDF

Les attaques de phishing utilisant des QR codes frauduleux intégrés dans des documents PDF joints…

7 heures ago

Windows 11 : une mise à jour majeure apporte de nouvelles fonctionnalités

Microsoft a amorcé le déploiement de Windows 11 24H2. Passage en revue des nouvelles fonctionnalités…

1 mois ago

Microsoft 365 : comment Copilot se déploie dans toutes les applications

L'intégration de Copilot dans la suite bureautique s'accélère. Où trouver l'assistant IA et comment l'utiliser…

2 mois ago

PC Copilot + : Microsoft veut garder Recall

Microsoft annonce une phase expérimentale pour lancer Recall sur les PC Copilot+. Elle doit commencer…

2 mois ago

Windows 11 : comment Microsoft va réduire la taille des mises à jour

Comment réduire la taille des mises à jour de Windows 11 ? Microsoft annonce la…

4 mois ago

Windows 11 : comment Bloc-notes va remplacer WordPad

Déjà doté de la sauvegarde automatique, d'un compteur de caractères et de Copilot, Bloc-notes embarque…

4 mois ago