Čtenáři jako vy pomáhají podporovat MUO. Když provedete nákup pomocí odkazů na našich stránkách, můžeme získat provizi přidružené společnosti. Přečtěte si více.

Po více než dvě desetiletí byl JavaScript jediným programovacím jazykem, který mohl běžet v prohlížečích. Jiné jazyky jako Python, C++ a Go byly určeny hlavně pro vytváření serverové strany webových aplikací a služeb.

JavaScript si vedl docela dobře, ale mnoho dalších programovacích jazyků je rychlejších. Existuje mnoho výhod, které mohou webové aplikace využívat tím, že spouštějí jiné, výkonnější programovací jazyky přímo v prohlížeči.

WebAssembly nabízí efektivní, otevřenou a bezpečnou možnost, která je součástí otevřené webové platformy. Můžete jej použít k vytváření aplikací, které běží na prohlížečích, serverech a v jiných prostředích.

Představujeme WebAssembly

WebAssembly (WASM) je efektivní, nízkoúrovňový, přenosný jazyk standardizovaný W3C. Definuje formát kódu a rozhraní pro programy pro interakci s platformami na webu.

Většinu programovacích jazyků můžete zkompilovat do formátu binárního kódu WebAssembly. Prohlížeče mohou interpretovat a spouštět výsledný kód WASM stejně jako u běžného JavaScriptu. WebAssembly můžete také spustit spolu s kódem JavaScript pro vyšší výkon aplikace a interoperabilitu mezi těmito dvěma.

instagram viewer

WebAssembly se v roce 2019 stal standardem W3C s podporou mnoha programovacích jazyků. Podle Vyrobeno pomocí WebAssembly, již existuje mnoho populárních projektů, které využívají WebAssembly k dodávání rychlého a bezpečného softwaru svým uživatelům.

WebAssembly podporuje mnoho programovacích jazyků, včetně těch, které jsou specifické na straně serveru. Patří mezi ně Rust, Go, Python, C++, TypeScript, Java, PHP a Ruby. Podívejte se na zdroj awesome-wasm-langs se dozvíte o jazycích podporovaných WebAssembly a balíčcích, které s nimi můžete použít.

Zde je příklad Program WebAssembly od Tutorials Point který vrací maximálně dvě celá čísla:

Syntaxe WebAssembly je ve srovnání s JavaScriptem poměrně podrobná, ale to by neměl být problém. Nebudete se muset učit syntaxi, protože WebAssembly bude cílem kompilace pro programy, které píšete ve vašem preferovaném jazyce.

Jak WebAssembly funguje

WASM existuje jako cíl kompilace pro jiné programovací jazyky k transpilaci. Můžete napsat váš oblíbený programovací jazyk a zkompilujte zdrojový kód do bytecode WASM, který běží na klientovi. Překlad do nativního strojového kódu znamená, že může běžet vysokou rychlostí, obvykle rychleji než JavaScript.

Jednou z kritických vlastností WASM je interoperabilita JavaScriptu. Moduly WASM můžete importovat do webové aplikace a vystavit funkce WASM pro použití v kódu JavaScript. JavaScriptové rámce mohou využívat výhod WASM pro vyšší výkon.

WASM používá model provedení v sandboxu podobný JavaScriptu. WASM komunikuje s hostitelským počítačem pomocí ABI (Application Binary Interface), jako je např Systémové rozhraní WebAssembly který poskytuje přístup ke zdrojům a dalším systémovým službám na základě požadavků programu.

Mnoho moderních prohlížečů podporuje WASM, včetně Chrome, Microsoft Edge, Mozilla Firefox, Opera a Safari. Jazyky jako Go a Podpora rzi WASM z krabice.

Proč web potřebuje WebAssembly

JavaScript má omezenou funkčnost vzhledem k návrhu. Není to jedno z nejrychlejší nebo nejvýkonnější jazyky protože to začalo jako skriptovací jazyk pro web. Ačkoli existuje mnoho běhových prostředí, kde JavaScript běží různou rychlostí, existují rychlejší a další výkonné jazyky, které WebAssembly může přinést na web pro případy použití, jako jsou hry, videa a hudba.

WebAssembly také nabízí větší přenositelnost a flexibilitu jazykům, které neběží na webu. Zavedení více jazyků na web (nejoblíbenější platforma s otevřeným zdrojovým kódem) by mělo vést k celkovému lepšímu zážitku.

Přijetí WebAssembly je rychlé

Mnoho společností a vývojářů vytváří aplikace pomocí WebAssembly. Google, Dropbox a Cloudflare aktivně využívají WebAssembly v některých svých aplikacích.

WebAssembly je populární mezi vývojáři jazyků Python, C++ a Rust. Vývojáři Pythonu běžně používají Pyoidide a PyScript, vývojáři C++ a Emscripten a vývojáři Rust s Percy, Yew, Sycamore, MoonZoon a frameworkem Seed.