Spring GDS 25è Aniversari
Una empresa de logística que envia a 190 països va construir alguna cosa per enviar-se a si mateixa.
WebAssembly és un format d'instruccions binàries que corre al navegador a una velocitat propera a la nativa. El codi escrit en C, C++, Rust o Go es compila a un mòdul WASM compacte, i el navegador l'executa dins del mateix sandbox que corre JavaScript. Tots dos treballen colze a colze. JavaScript gestiona el DOM i el pegament, WASM gestiona el càlcul pesant.
La raó que existeixi és la velocitat. JavaScript és prou ràpid per a la major part de la feina d'interfície, però s'encalla amb qualsevol cosa limitada per CPU: codificació de vídeo, renderitzat 3D, física, criptografia, parseig de dades a gran escala. WASM entrega bytecode precompilat que el motor pot validar i executar sense el cicle de parsejar i optimitzar pel qual passa JavaScript. L'editor de disseny de Figma va traslladar el seu nucli de renderitzat a WebAssembly fa anys, cosa que és part de per què una pestanya del navegador pot moure píxels com una app d'escriptori.
WASM no és un reemplaçament de JavaScript i no toca el DOM per si sol. Corre en un sandbox segur en memòria, parla amb la pàgina a través d'un pont de JavaScript i brilla quan hi ha veritable càlcul numèric a fer. Per a un lloc de màrqueting estàndard, afegeix una complexitat que no necessites. Per a una eina CAD, un joc o una estació d'àudio al navegador, canvia el que és possible.
Recorrem a WebAssembly quan el navegador xoca amb un mur. Un client ens va arribar amb un configurador que necessitava renderitzar i recalcular milers d'actualitzacions de geometria en temps real, i JavaScript pelat no podia mantenir estable la taxa de fotogrames. Vam moure els càlculs a un mòdul de Rust compilat a WASM i vam deixar la UI a l'stack existent. La interacció va passar d'entretallada a fluida, sobre el mateix maquinari.
La major part de la nostra feina de desenvolupament web no ho necessita mai, i ho diem. WASM es guanya el seu lloc quan hi ha càlcul real pel mig, no perquè soni modern. Quan encaixa, el tractem com una eina dins d'una aplicació web a mida més gran, cablejada amb cura a la capa de JavaScript i mesurada contra pressupostos de rendiment reals i no contra benchmarks que queden bé en una diapositiva.
Fiques al navegador feina que JavaScript no pot carregar? Anem a mirar-ho junts.
Una empresa de logística que envia a 190 països va construir alguna cosa per enviar-se a si mateixa.
Convertir una marca en un negoci que funciona.
Mig milió de persones. Una app. Zero caos.















