WebAssembly - Présentation

WebAssembly est un nouveau langage de programmation informatique pour le Web. Le code WebAssembly est un format binaire de bas niveau, compatible avec le Web et pouvant facilement s'exécuter dans les navigateurs Web modernes. La taille du fichier généré est petite et il se charge et s'exécute plus rapidement. Vous pouvez maintenant compiler des langages comme C, C ++, Rust, etc. au format binaire et il peut fonctionner sur le Web comme javascript.

Définition de WebAssembly

Selon le site officiel de WebAssembly, disponible sur https://webassembly.org/, il est défini comme WebAssembly (abrégé en Wasm) est un format d'instruction binaire pour une machine virtuelle basée sur la pile. Wasm est conçu comme une cible portable pour la compilation de langages de haut niveau comme C / C ++ / Rust, permettant le déploiement sur le Web pour les applications client et serveur.

Web Assembly n'est pas quelque chose qu'un développeur devra écrire, mais le code est écrit dans des langages comme C, C ++, Rust et peut être compilé en WebAssembly (wasm). Le même code peut être exécuté dans les navigateurs Web.

Web Assembly est un nouveau langage, le code est un langage d'assemblage de bas niveau, mais avec sa fonctionnalité de format de texte, le code est lisible et le débogage est possible, si nécessaire.

Objectifs de WebAssembly

Les standards ouverts pour WebAssembly sont développés dans un groupe communautaire du W3C qui comprend des représentants de tous les principaux navigateurs ainsi qu'un groupe de travail du W3C.

Les principaux objectifs de WebAssembly sont mentionnés ci-dessous -

  • Faster, Efficient and Portable - Le code WebAssembly est censé s'exécuter plus rapidement sur différentes plates-formes en tirant parti du matériel disponible.

  • Easy to read and debug - WebAssembly, étant un langage d'assemblage de bas niveau, prend en charge le format texte, ce qui vous permet de déboguer le code pour tous les problèmes et également de réécrire le code, si nécessaire.

  • Security - WebAssembly peut être exécuté en toute sécurité sur les navigateurs Web, car il prend en charge les autorisations et les politiques de même origine.

Avantages de WebAssembly

Voici les avantages de WebAssembly -

  • Run is Modern Browsers - WebAssembly est capable de s'exécuter sans aucun problème sur les navigateurs Web modernes disponibles.

  • Multiple Language support- Des langages comme C, C ++, Rust, Go peuvent maintenant compiler le code en WebAssembly et l'exécuter dans les navigateurs Web. Ainsi, les langues qui ne pouvaient pas fonctionner dans un navigateur pourront désormais le faire.

  • Faster, Efficient and Portable - En raison de la petite taille du code, il se charge et s'exécute plus rapidement.

  • Easy to understand- Les développeurs n'ont pas à se soucier beaucoup de la compréhension du codage WebAssembly, car ils n'ont pas à écrire le code dans WebAssembly. Au lieu de cela, compilez le code dans WebAssembly et exécutez-le sur le Web.

  • Easy to Debug - Bien que le code final soit en langage d'assemblage de bas niveau, vous pouvez également l'obtenir au format texte, qui est facile à lire et à déboguer.

Inconvénients de WebAssembly

Voici les inconvénients de WebAssembly -

  • WebAssembly est toujours en cours d'élaboration et il est trop tôt pour décider de son avenir.

  • WebAssembly dépend de javascript pour interagir avec le modèle d'objet de document (DOM).