Maison > Article > interface Web > Qu’est-ce que WebAssembly ? Une brève compréhension de WebAssembly
WebAssembly, appelé wasm, est un nouveau type de code qui s'exécute dans les navigateurs Web modernes. Il s'agit d'une nouvelle technologie qui exécute des programmes portables de manière sûre et efficace, ciblant principalement la plate-forme Web. L'article suivant vous présentera WebAssembly. J'espère qu'il vous sera utile.
Qu'est-ce que WebAssembly ?
WebAssembly ou wasm est un format de bytecode portable de bas niveau pour les scripts côté client dans le navigateur. Il s'agit d'un nouveau type de code qui s'exécute dans les navigateurs Web modernes et fournit de nouveaux. des fonctionnalités et des effets de performances efficaces pour les téléchargements et le chargement du navigateur.
Il est conçu pour fournir une cible de compilation efficace pour les langages sources de bas niveau tels que C, C++ et Rust.
WebAssembly est en fait implémenté par les développeurs de navigateurs derrière les moteurs JavaScript existants. Essentiellement, il vise à remplacer JavaScript comme cible pour les compilateurs et traducteurs sur le Web. Par exemple, au lieu de compiler TypeScript en JavaScript, ses développeurs peuvent désormais compiler en WebAssembly. En bref, ce n'est pas une nouvelle machine virtuelle, c'est un nouveau format pour la même VM JavaScript incluse dans chaque navigateur. Cela permet d'exploiter l'infrastructure JavaScript existante sans utiliser JavaScript.
Pourquoi WebAssembly ?
Si vous souhaitez simplement que des modules écrits dans des langages natifs tels que C, C++, Java, etc. sur le navigateur. Nous n'avons besoin que d'un convertisseur pour convertir la langue source vers la langue cible JavaScript.
Quant à WebAssembly, il peut directement compiler des langages natifs tels que C, C++ et Java en code machine, en omettant les convertisseurs. Efficacité grandement améliorée.
Le navigateur réalise une percée en termes d'efficacité d'exécution en ajoutant la prise en charge de la compilation pour un format de langage.
En plus de fonctionner rapidement, la représentation binaire spéciale de WebAssembly réduit également considérablement la taille du package de code. Dans le même temps, la vitesse de chargement du navigateur est améliorée.
Avantages de WebAssembly :
1. Rapide et efficace
WebAssembly est un bytecode portable. format, le bytecode est transmis au format binaire et, en raison de la structure du module, peut être compilé en parallèle par le navigateur pour une accélération supplémentaire, lui permettant de fonctionner à des performances proches des performances natives. Il est conçu pour fournir une cible de compilation efficace pour les langages sources de bas niveau tels que C, C++ et Rust.
2. Portabilité
Webassembly peut être porté sur d'autres plateformes. Cela signifie que si vous écrivez un logiciel dans un langage qui se compile en WebAssembly, vous pouvez l'exécuter sur .NET. Cela nous permet de réutiliser l'infrastructure JavaScript existante sur le Web.
Le code WebAssembly peut s'exécuter à une vitesse quasi native sur différentes plates-formes.
3. Lisible et déboguable
WebAssembly est un langage assembleur de bas niveau, mais il conçoit un format de texte très régulier, lisible par l'homme, qui vous permet d'écrire code, afficher le code et déboguer le code à la main.
4. Sécurité
WebAssembly s'exécute dans un environnement d'exécution en bac à sable et peut même être implémenté dans la machine virtuelle JavaScript existante. Dans l'environnement Web, WebAssembly se conformera strictement à la même politique d'origine et à la même politique de sécurité du navigateur.
【Articles connexes recommandés】
Qu'est-ce que GraphQL ? Les avantages et les inconvénients de GraphQL
Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'apprentissage de chacun. Pour un contenu plus passionnant, vous pouvez prêter attention aux colonnes de didacticiels pertinentes du site Web PHP chinois ! ! !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!