WASM by Example – WASM anhand von Beispielen lernen
(wasmbyexample.dev)Einführung in WebAssembly (Wasm)
- WebAssembly (Wasm) ist ein universeller Low-Level-Bytecode, der im Web ausgeführt wird.
- Es dient als Kompilierungsziel für verschiedene Sprachen wie Rust, AssemblyScript (ähnlich wie Typescript), Emscripten (C/C++) und TinyGo (Go).
- Es wird derzeit von allen wichtigen Browsern unterstützt und verfügt über Laufzeitumgebungen für die Ausführung auf Servern oder zur Interaktion mit dem System über WASI.
- Wasm bietet ein kompaktes Binärformat sowie vorhersehbare Performance und Portabilität und kann zusammen mit JavaScript und anderen Host-Sprachen ausgeführt werden.
Was ist „Wasm By Example“?
- „Wasm By Example“ bietet eine prägnante und praktische Einführung in WebAssembly anhand von Code-Snippets und kommentierten Beispielprogrammen für WebAssembly.
- Es enthält Beispiele, die die grundlegenden Konzepte von WebAssembly erklären, sowie Beispiele, die zeigen, wie sich damit typische Funktionen größerer Anwendungen aufbauen lassen.
Beispiele zu den zentralen Konzepten von WebAssembly (Wasm)
- Es werden Beispiele bereitgestellt, die die wichtigsten Grundkonzepte von WebAssembly veranschaulichen.
- Diese Beispiele sind zwar nicht unbedingt der bequemste oder produktivste Weg, Projekte mit WebAssembly zu entwickeln, eignen sich jedoch gut zum Lernen oder für die Entwicklung einfacher bzw. Low-Level-Teile einer Anwendung.
- Hello World
- Exports
- WebAssembly Linear Memory
- Importing Javascript Functions Into WebAssembly
Beispiele zur Anwendung der Konzepte
- Die konzeptionellen Beispiele werden erweitert, um zu zeigen, wie diese einfachen Beispiele zum Aufbau allgemeiner Funktionen größerer Anwendungen verwendet werden können.
- Reading and Writing Graphics
- Reading and Writing Audio
Beispiele für Ökosystem-Tools und Sprachfunktionen
- Es werden Beispiele bereitgestellt, die Tools, Bibliotheken und Funktionen der gewählten Programmiersprache hervorheben.
- Passing High Level Data Types with
wasm-bindgen
- Passing High Level Data Types with
- Diese Bestandteile des Ökosystems können beim Aufbau leistungsfähiger Anwendungen erheblich helfen.
WebAssembly-Beispiele außerhalb des Webbrowsers
- Es werden Beispiele bereitgestellt, die das WebAssembly System Interface (WASI), eigenständige WebAssembly-Runtimes, Tools für Anwendungen mit WASI sowie Anwendungsfälle für Aufgaben wie Cloud Computing und Geräte des Internets der Dinge (IoT) hervorheben.
- WebAssembly verfügt über wichtige Eigenschaften, die gut zum Browser-Web passen, und genau diese Eigenschaften machen es auch außerhalb des Browsers zu einer beliebten Wahl.
- WASI Introduction
- WASI Hello World
Meinung von GN⁺
Der wichtigste Punkt dieses Artikels ist, dass WebAssembly (Wasm) als Kompilierungsziel für verschiedene Programmiersprachen dient und vielseitig einsetzbar ist – nicht nur im Webbrowser, sondern auch auf Servern und in unterschiedlichen Systemumgebungen. „Wasm By Example“ zeigt sehr gut, warum diese Technologie interessant und attraktiv ist, indem es praktische Beispiele bietet, mit denen Einsteiger in die Softwareentwicklung WebAssembly leicht verstehen und direkt anwenden können. Die Portabilität und Performance von WebAssembly sind wichtige Faktoren in der modernen Webentwicklung, und dieser Artikel liefert nützliche Informationen für alle, die diese Technologie erlernen möchten.
1 Kommentare
Hacker-News-Kommentare
hello_world-Demo mehrere Megabyte große Seiten erzeugt.add-Beispiel, das mit WASM in einer Nicht-JavaScript-Sprache geschrieben wurde, eine interaktive Funktion besitzt, die zur Laufzeit Parameter entgegennehmen kann.