Čo je WebAssembly?

Čo je WebAssembly?
Čitatelia ako vy pomáhajú podporovať MUO. Keď uskutočníte nákup pomocou odkazov na našej stránke, môžeme získať pridruženú províziu. Čítaj viac.

Viac ako dve desaťročia bol JavaScript jediným programovacím jazykom, ktorý sa dal spustiť v prehliadačoch. Ostatné jazyky ako Python, C++ a Go slúžili hlavne na vytváranie serverovej strany webových aplikácií a služieb.





JavaScriptu sa darilo celkom dobre, ale mnoho iných programovacích jazykov je rýchlejších. Existuje mnoho výhod, ktoré môžu webové aplikácie využiť pri spúšťaní iných, výkonnejších programovacích jazykov priamo v prehliadači.





VYUŽITIE VIDEA DŇA

WebAssembly ponúka efektívnu, otvorenú a bezpečnú možnosť, ktorá je súčasťou otvorenej webovej platformy. Môžete ho použiť na vytváranie aplikácií, ktoré bežia na prehliadačoch, serveroch a v iných prostrediach.





Predstavujeme WebAssembly

  Úvod do WebAssembly

WebAssembly (WASM) je efektívny, nízkoúrovňový prenosný jazyk štandardizovaný W3C. Definuje formát kódu a rozhrania pre programy na interakciu s platformami na webe.

Väčšinu programovacích jazykov môžete skompilovať do formátu binárneho kódu WebAssembly. Prehliadače môžu interpretovať a spúšťať výsledný kód WASM rovnako ako pri bežnom JavaScripte. WebAssembly môžete spustiť aj spolu s kódom JavaScript pre vyšší výkon aplikácie a interoperabilitu medzi nimi.



WebAssembly sa v roku 2019 stal štandardom W3C s podporou mnohých programovacích jazykov. Podľa Vyrobené pomocou WebAssembly , už existuje veľa populárnych projektov, ktoré používajú WebAssembly na dodanie rýchleho a bezpečného softvéru svojim používateľom.

WebAssembly podporuje veľa programovacích jazykov, vrátane tých, ktoré sú špecifické na strane servera. Patria sem Rust, Go, Python, C++, TypeScript, Java, PHP a Ruby. Pozrite sa na zdroj awesome-wasm-langs sa dozviete o jazykoch podporovaných WebAssembly a o balíkoch, ktoré s nimi môžete použiť.





Tu je príklad Program WebAssembly od spoločnosti Tutorials Point ktorý vráti maximálne dve celé čísla:

  Ukážka kódu WASM

Syntax WebAssembly je v porovnaní s JavaScriptom relatívne podrobná, ale to by nemal byť problém. Nemusíte sa učiť syntax, pretože WebAssembly bude cieľom kompilácie programov, ktoré píšete vo vašom preferovanom jazyku.





Ako funguje WebAssembly

WASM existuje ako cieľ kompilácie pre iné programovacie jazyky na transpiláciu. Môžete napísať váš obľúbený programovací jazyk a skompilujte zdrojový kód do bytecode WASM, ktorý beží na klientovi. Preklad do natívneho strojového kódu znamená, že môže bežať vysokou rýchlosťou, zvyčajne rýchlejšie ako JavaScript.

Jednou z kritických vlastností WASM je interoperabilita JavaScriptu. Moduly WASM môžete importovať do webovej aplikácie a vystaviť funkcie WASM na použitie v kóde JavaScript. Rámce JavaScriptu môžu využívať výhody WASM pre vyšší výkon.

WASM používa model vykonávania v karanténe podobný JavaScriptu. WASM interaguje s hostiteľským počítačom pomocou ABI (Application Binary Interface) ako napr Rozhranie systému WebAssembly ktorý poskytuje prístup k zdrojom a ďalším systémovým službám na základe požiadaviek programu.

Mnoho moderných prehliadačov podporuje WASM, vrátane Chrome, Microsoft Edge, Mozilla Firefox, Opera a Safari. Jazyky ako Go a Podpora hrdze WASM von z krabice.

Ovládač xbox one nefunguje na počítači

Prečo web potrebuje WebAssembly

  Funkcie WebAssembly

JavaScript má obmedzenú funkčnosť vzhľadom na dizajn. Nie je jedným z najrýchlejšie alebo najvýkonnejšie jazyky odkedy to začalo ako skriptovací jazyk pre web. Hoci existuje veľa runtime, kde JavaScript beží rôznou rýchlosťou, existujú rýchlejšie a výkonnejšie jazyky, ktoré WebAssembly môže priniesť na web pre prípady použitia, ako sú hry, videá a hudba.

WebAssembly tiež ponúka väčšiu prenosnosť a flexibilitu jazykom, ktoré nie sú spustené na webe. Zavedenie viacerých jazykov na web (najpopulárnejšia platforma s otvoreným zdrojovým kódom) by malo viesť k celkovému lepšiemu zážitku.

Prijatie WebAssembly je rýchle

Mnoho spoločností a vývojárov vytvára aplikácie pomocou WebAssembly. Google, Dropbox a Cloudflare aktívne využívajú WebAssembly v niektorých svojich aplikáciách.

WebAssembly je populárny medzi vývojármi jazykov Python, C++ a Rust. Vývojári Pythonu bežne používajú Pyoidide a PyScript, vývojári C++ a Emscripten a vývojári Rust s rámcom Percy, Yew, Sycamore, MoonZoon a Seed.