Nodea — logo

WebAssembly

WebAssembly (w skrócie Wasm) to niskopoziomowy, przenośny format binarny, który przeglądarki potrafią uruchamiać z wydajnością zbliżoną do kodu natywnego. Powstał, aby umożliwić działanie w przeglądarce zadań zbyt kosztownych obliczeniowo dla klasycznego JavaScriptu — takich jak edycja wideo, gry 3D, symulacje czy przetwarzanie obrazów.

Jak działa WebAssembly

Kod napisany w językach takich jak C, C++ czy Rust kompiluje się do formatu Wasm — zwartego zestawu instrukcji zbliżonych do kodu maszynowego. Przeglądarka wczytuje i wykonuje ten moduł w bezpiecznym, odizolowanym środowisku (sandboksie), z tymi samymi zabezpieczeniami, co reszta strony. WebAssembly nie działa jednak w oderwaniu: współpracuje z JavaScriptem, który wywołuje funkcje Wasm i pośredniczy w dostępie do interfejsu strony oraz DOM.

Zastosowania i miejsce w ekosystemie

WebAssembly nie zastępuje JavaScriptu ani frameworków interfejsu, takich jak Vue.js. Zamiast tego przejmuje fragmenty wymagające maksymalnej wydajności, podczas gdy JavaScript i mechanizmy renderowania, w tym wirtualny DOM, nadal odpowiadają za logikę i budowę interfejsu. Dzięki temu w przeglądarce działają dziś zaawansowane narzędzia — edytory graficzne, aplikacje CAD czy silniki gier — które wcześniej wymagały instalacji. Coraz częściej Wasm bywa też używany poza przeglądarką, jako lekki i bezpieczny format uruchamiania kodu na serwerach. Dla większości frameworków pozostaje jednak uzupełnieniem wykorzystywanym punktowo, tam gdzie realnie potrzebna jest surowa wydajność.

Powiązane pojęcia

Najczęstsze pytania

Czy WebAssembly zastąpi JavaScript?

Nie. WebAssembly nie zastępuje, lecz uzupełnia JavaScript — przejmuje zadania wymagające dużej mocy obliczeniowej, podczas gdy JavaScript nadal odpowiada za logikę interfejsu i komunikację z resztą strony.