Konsorciumi W3C për dhënien teknologjisë WebAssembly statusin e standardit të rekomanduar. WebAssembly ofron një kod të nivelit të ulët universal të pavarur nga shfletuesi për ekzekutimin e aplikacioneve të kompiluara nga gjuhë të ndryshme programimi. WebAssembly pozicionohet si një teknologji më e avancuar dhe e transfertueshme ndërmjet shfletuesve për krijimin e aplikacioneve web me performancë të lartë. WebAssembly mund të përdoret për të adresuar detyra që kërkojnë performancë të lartë, si kodimi i videove, përpunimi i tingujve, manipulimi i grafikës dhe 3D, zhvillimi i lojërave, operacionet kriptografike, llogaritjet matematikore dhe krijimi i realizimeve të transfertueshme të gjuhëve të programimit.
WebAssembly shumë ngjan me Asm.js, por ndryshon në atë që është një format binar, i cili nuk është i lidhur me JavaScript. Në WebAssembly nuk kërkohet përdorimi i mbledhësit të plehrave, pasi përdoret menaxhimi i qartë i memories. Falë angazhimit të JIT për WebAssembly, mund të arrihet një nivel performancë afërsisht të ngjashëm me kodin natyror. Ndër detyrat kryesore të WebAssembly është sigurimi i transfertueshmërisë, parashikueshmërisë së sjelljes dhe identitetit të ekzekutimit të kodit në platforma të ndryshme. si një platformë universale për ekzekutimin e sigurt të kodit në çdo infrastrukturë, sisteme operative dhe pajisje, pa u kufizuar në shfletuesit.
W3C standardizoi tri specifikacione të lidhura me WebAssembly:
- â pĂ«rshkruan njĂ« makinĂ« virtuale tĂ« nivelit tĂ« ulĂ«t pĂ«r ekzekutimin e kodit ndĂ«rmjetĂ«sor WebAssembly. Burimet e lidhura me WebAssembly shiten nĂ« formatin â.wasmâ, i ngjashĂ«m me skedarin â.classâ nĂ« Java dhe pĂ«rmban tĂ« dhĂ«na statike dhe segmente kodi pĂ«r tĂ« punuar me kĂ«to tĂ« dhĂ«na.
- â pĂ«rcakton njĂ« ndĂ«rfaqe programore tĂ« bazuar nĂ« mekanizmin Promise pĂ«r tĂ« kĂ«rkuar dhe ekzekutuar burime â.wasmâ. Formati i burimeve WebAssembly Ă«shtĂ« optimizuar pĂ«r fillimin e ekzekutimit pa pritur ngarkimin e plotĂ« tĂ« skedarit, duke rritur kĂ«shtu pĂ«rgjegjshmĂ«rinĂ« e aplikacioneve web.
- â ofron API pĂ«r integrimin me JavaScript. Lejon marrjen e vlerave dhe transmetimin e parametrave nĂ« funksionet e WebAssembly. Ekzekutimi i WebAssembly i pĂ«rgjigjet modelit tĂ« sigurisĂ« sĂ« JavaScript dhe tĂ« gjitha ndĂ«rveprimet me sistemin kryesor kryhen nĂ« pĂ«rputhje me ekzekutimin e kodit JavaScript.
Në të ardhmen, planifikohet përgatitja e specifikimeve për mundësitë e tilla të WebAssembly si:
- Multithreading me memorie të ndarë dhe akses atomar në memorie;
- Operacionet vektoriale të bazuara në SIMD, duke lejuar paralelizimin e ekzekutimit të cikleve;
- Tipet referenciale për lidhje të drejtpërdrejta me objekte nga kodi i WebAssembly;
- Mundësia për të thirrur funksione pa shpenzuar hapësirë shtesë në stek;
- Integrimi me modulet ECMAScript â mundĂ«sia pĂ«r ngarkimin e kodit WebAssembly nga JavaScript si module, pĂ«rputhĂ«se me specifikimin ECMAScript 6;
- Reĥimi i funksionimit me mbledhësin e plehrave;
- Interface të de bug-imit;
- (WebAssembly System Interface) â API pĂ«r ndĂ«rveprimin e drejtpĂ«rdrejtĂ« me sistemin operativ (API POSIX pĂ«r punĂ«n me skedarĂ«t, soketĂ«t etj.).
Burimi: opennet.ru
