[ad_1]
A maioria dos sites e aplicativos da Web são escritos em JavaScript, ou pelo menos algo que é convertido em JavaScript. Houve muitas tentativas ao longo dos anos para mudar isso, mas não espere que o JavaScript desapareça completamente tão cedo.
Zaplib é uma startup que criou uma estrutura para reescrever partes de aplicativos da Web baseados em JavaScript na linguagem de programação Rust, que seria executado em navegadores da Web usando WebAssembly. Rust é uma linguagem de programação de baixo nível otimizada para desempenho e segurança, e Rust tem sido usada por muitos aplicativos para melhorar significativamente os tempos de carregamento e a capacidade de resposta. A Mozilla reescreveu o mecanismo CSS no navegador Firefox usando Rust em 2017, como parte da atualização ‘Firefox Quantum’, que dobrou o desempenho típico do Firefox. O WebAssembly permite que os sites escrevam seu código em linguagens de programação mais tradicionais, como C++, e o executem em um navegador da Web, como JavaScript.
A Zaplib esperava que reescrever aplicativos da Web no WebAssembly com tecnologia Rust, uma seção por vez, resultaria em um aumento de desempenho de até 10 vezes. No entanto, os fundadores da empresa disseram em uma ‘autópsia’ que os saltos maciços não funcionaram. “Nossa aposta era que seria 10 vezes mais ergonômico acelerar sua aplicação, de forma incremental, em Rust. Isso não se manteve em implementações do mundo real”, disse a equipe.
O grupo notou alguns problemas com seu plano. A maioria das empresas estava (compreensivelmente) hesitante em reescrever seu código em uma linguagem com a qual seus engenheiros não estavam familiarizados, mas, mais importante, não havia diferença significativa de velocidade entre um bom código JavaScript e um bom código Rust. Zaplib ajudou uma empresa a portar uma ferramenta de simulação para Rust, que acabou sendo apenas 5% mais rápida que a versão existente do JavaScript. Zaplib também esperava que seu renderizador 2D acelerado por hardware ajudasse, mas a maior parte do ganho de desempenho veio do WebGL, que não precisa de Rust ou WebAssembly.
Isso não significa que o WebAssembly seja terrível ou inútil: tanto o Google Earth quanto o Photoshop mudaram para navegadores da web graças ao WebAssembly, e empresas como a Microsoft estão criando estruturas para mais desenvolvedores fazerem a mesma transição. Há absolutamente uma razão para ele existir, mas o JavaScript também evoluiu significativamente nos últimos anos. O mecanismo ‘V8’ que lida com código JavaScript no Chrome, Microsoft Edge e outros navegadores baseados no Chromium está cada vez mais rápido. Otimizações recentes tornaram o Chrome o navegador mais rápido disponível no Mac, de acordo com o Google, e outras mudanças também aceleraram as versões do Windows e do Android.
O WebAssembly já está trazendo uma nova onda de aplicativos para a web que podem não existir há alguns anos, mas não espere que todo o JavaScript desapareça tão cedo. Zaplib disse em seu post, “geralmente há maneiras mais simples de encontrar melhorias de desempenho do que o Rust [or WebAssembly]. “
Fonte: Zaplib
[ad_2]