Kaj WebAssembly pomeni za razvoj programske opreme?

Pomen tehnologije WebAssembly za spletne aplikacije. Nove funkcionalnosti, ki jih bo mogoče implementirati s pomočjo WebAssembly in kdaj naj se odločimo zanj.

WebAssembly prinaša v spletne brskalnike nov način za poganjanje programov. Podpirajo ga vsi sodobni brskalniki. Omogoča poganjanje aplikacij z vsemi varnostnimi mehanizmi brskalnika, hkrati pa lahko popolnoma izkoristi hitrost procesorja. Na spletu se nam tako obeta še več iger in drugih računsko zahtevnih aplikacij. CAD programi, programi za obdelavo podatkov, slik, videa in ostali nam bodo dostopni enostavno prek obiska spletne strani.

WebAssembly je nov format za uporabo programov in knjižnic na spletu. Na splet prinaša hitrejše in manjše aplikacije brez zapletenega nameščanja, ki smo ga vajeni pri klasični programski opremi. WebAssembly je podoben formatoma .exe in .dll v tem, da je program v binarni obliki. Velika razlika pa je, da je WebAssembly podprt v vsakem sodobnem spletnem brskalniku. Za uporabnika to pomeni, da lahko uporablja še bolj napredne in računsko zahtevne aplikacije kar v brskalniku, brez nameščanja novih programov na računalnik. Ista WebAssembly aplikacija deluje na telefonih, tablicah, računalnikih in pametnih televizijah. Za WebAssembly še vedno veljajo vse varnostne omejitve, ki že veljajo za aplikacije v JavaScriptu. To pomeni, da WebAssembly programi ne bodo mogli dostopati do diska, senzorjev in drugih delov naprave brez dovoljenja uporabnika. WebAssembly aplikacije programiramo v programskih jezikih C/C++ ali Rust. V prihodnjih mesecih in letih pa se obeta še boljša podpora za C# in Go.

Ali je WebAssembly primeren za vašo aplikacijo?

Kot pri vsaki novi tehnologiji, je tudi odločitev o uporabi WebAssemblyja večplasten problem. Vsekakor pa odločitev olajša to, da lahko WebAssembly začnemo uporabljati postopoma. WebAssembly je dobro integriran v JavaScript. WebAssembly lahko uporabimo le za del, kjer ga rabimo, denimo za računsko zahteven del aplikacije ali pa za uporabo knjižnice, ki je napisana v C/C++/Rust.

Znanje oz. dodatno izobraževanje za uporabo WebAssemblyja je odvisno od načina uporabe:

  • Če razvijamo igre s pomočjo Unity3D, je izvoz igre v format WebAssembly zelo enostaven. Vse kar moramo narediti je, da izberemo pri izvozu prave nastavitve.
  • Če hočemo optimizirati računsko zahteven del JavaScript aplikacije, potrebujemo znanje C, C++ ali Rust.
  • Sčasoma se bodo na repozitorijih knjižnic kot npr. https://www.npmjs.com/ pojavile knjižnice, ki bodo navzven videti kot navaden JavaScript, znotraj pa bodo morda imele del funkcionalnosti izveden s pomočjo WebAssemblyja

Poglejte si še

Published by in general and tagged knjižnice, libraries, splet, spletne aplikacije, web and webassembly using 360 words.