WASM by Example - Apprendre WASM par l'exemple
(wasmbyexample.dev)Introduction à WebAssembly (Wasm)
- WebAssembly (Wasm) est un bytecode bas niveau à usage général exécuté sur le web
- Il sert de cible de compilation pour divers langages comme Rust, AssemblyScript (similaire à Typescript), Emscripten (C/C++), TinyGo (Go), etc.
- Il est actuellement disponible dans tous les principaux navigateurs et dispose de runtimes pour une exécution côté serveur ou pour interagir avec le système via WASI
- Wasm propose un format binaire compact, ainsi que des performances prévisibles et une bonne portabilité, et peut s'exécuter aux côtés de JavaScript et d'autres langages hôtes
Qu'est-ce que 'Wasm By Example' ?
- 'Wasm By Example' offre une introduction concise et pratique à WebAssembly à l'aide d'exemples de programmes WebAssembly accompagnés d'extraits de code et de commentaires
- Il comprend des exemples expliquant les concepts de base de WebAssembly, ainsi que d'autres montrant comment construire des fonctionnalités courantes d'applications plus vastes à partir de ces concepts
Exemples des concepts clés de WebAssembly (Wasm)
- Des exemples illustrant les principaux concepts fondamentaux de WebAssembly sont proposés.
- Ces exemples ne constituent pas forcément la manière la plus pratique ou la plus productive de construire un projet en WebAssembly, mais ils conviennent bien à l'apprentissage ou au développement de parties simples ou bas niveau d'une application.
- Hello World
- Exports
- WebAssembly Linear Memory
- Importing Javascript Functions Into WebAssembly
Exemples appliquant les concepts
- Ils prolongent les exemples conceptuels pour montrer comment ces exemples simples peuvent servir à construire des fonctionnalités courantes dans des applications plus larges
- Reading and Writing Graphics
- Reading and Writing Audio
Exemples d'outils de l'écosystème et de fonctionnalités du langage
- Des exemples mettant en avant les outils, bibliothèques et fonctionnalités du langage de programmation choisi sont fournis
- Passing High Level Data Types with
wasm-bindgen
- Passing High Level Data Types with
- Ces composants de l'écosystème peuvent grandement aider à construire des applications puissantes.
Exemples de WebAssembly en dehors du navigateur web
- Des exemples sont fournis pour mettre en avant WebAssembly System Interface (WASI), les runtimes WebAssembly autonomes, les outils pour les applications utilisant WASI, ainsi que des cas d'usage comme le cloud computing et les appareils de l'internet des objets (IoT)
- WebAssembly possède des fonctionnalités majeures adaptées au web dans le navigateur, et ces mêmes caractéristiques en font aussi un choix populaire en dehors du navigateur
- WASI Introduction
- WASI Hello World
L'avis de GN⁺
Le point le plus important de cet article est que WebAssembly (Wasm) est une cible de compilation pour divers langages de programmation et qu'il possède une grande polyvalence, lui permettant d'être utilisé non seulement dans les navigateurs web, mais aussi sur les serveurs et dans divers systèmes. 'Wasm By Example' montre bien pourquoi cette technologie est intéressante et attrayante en proposant des exemples pratiques qui permettent aux ingénieurs logiciel débutants de comprendre facilement WebAssembly et de l'appliquer concrètement. La portabilité et les performances de WebAssembly sont des éléments importants du développement web moderne, et cet article fournit des informations utiles à celles et ceux qui souhaitent apprendre cette technologie.
1 commentaires
Avis sur Hacker News
hello_worldgénère des pages de plusieurs mégaoctets.add, écrit dans un langage autre que JavaScript avec WASM, possède une fonctionnalité interactive permettant de recevoir des paramètres à l’exécution.