Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

WebAssembly: un concorrente per Javascript?

WebAssembly rappresenta un concorrente per Javascript o un suo complemento? In che modo possono convivere queste due soluzioni?
WebAssembly: un concorrente per Javascript?
WebAssembly rappresenta un concorrente per Javascript o un suo complemento? In che modo possono convivere queste due soluzioni?
Link copiato negli appunti

Il mondo della programmazione e dello sviluppo Web si muove alla velocità della luce. Basti osservare i cambiamenti che le nuove specifiche ed i nuovi linguaggi hanno portato negli ultimi anni. Anche in questo momento, con Javascript al massimo livello di popolarità, sta iniziando ad emergere una sorta di alternativa, chiamata WebAssembly.

WebAssembly (Wasm, WA) è uno standard web che definisce un formato binario e un corrispondente formato testuale per la scrittura di codice eseguibile nelle pagine Web. Ha lo scopo di abilitare l'esecuzione del codice quasi alla stessa velocità con cui esegue il codice macchina nativo. È stato progettato come integrazione di JavaScript per accelerare le prestazioni delle parti critiche delle applicazioni Web e, in seguito, per consentire lo sviluppo Web in altri linguaggi oltre a JavaScript.

È sviluppato dal World Wide Web Consortium (W3C) con ingegneri provenienti da Mozilla, Microsoft, Google e Apple. Il codice WebAssembly è concepito per essere eseguito su una stack machine portabile strutturata e astratta, progettato per essere più veloce da analizzare di JavaScript e più veloce da eseguire e per consentire una rappresentazione molto compatta del codice. Mozilla ha dichiarato il supporto "in tutti i principali browser" ed è stato abilitato di default anche in Edge 16. Per compatibilità con le versioni precedenti, Wasm può essere compilato in asm.js da un'applet JavaScript (il cosiddetto polyfill) ed eseguito su browser incompatibili in questo modo.

Recentemente anche Microsoft ha iniziato a sperimentare con WebAssembly, per portare .NET sui browser utilizzando il run-time Mono. Un esempio concreto è Blazor, un web framework .NET (in versione sperimentale) per SPA (Single-Page-Application) che utilizza C# ed HTML e che lavora con i browser girando su Mono.

Lo stack composto da WebAssembly, Mono e Blazor ha il potenziale per rendere disponibile una piattaforma .NET per gli sviluppatori Web che non richiede Javascript o plug-in browser aggiuntivi.

Tuttavia, WebAssembly, come si evince dalla documentazione ufficiale, non sta tentando di rimpiazzare Javascript. Contrariamente, WebAssembly può rappresentare un complemento al primo. Certamente, con il tempo necessario alla causa, WebAssembly permetterà a diversi linguaggi di programmazione di essere "compilati sul Web", ma come detto in apertura di articolo, Javascript gode di un momento di (meritata) popolarità tale da essere difficilmente rimpiazzabile, almeno nel breve-medio termine. E' possible che WebAssembly e Javascript possano collaborare e lavorare insieme per uno scopo comune, e questo è lo scenario più probabile che molti sviluppatori che seguono le evoluzioni su questo fronte si attendono.

Per WebAssembly e per le tecnologie basate su di esso sono ancora giorni di infanzia, ma l'ecosistema promette molto bene.

Via WebAssembly

Ti consigliamo anche