2015/06/18
WebAssembly quer compilar e acelerar o código executado nos browsers
O Google, Microsoft, Mozilla e WebKit vão juntar-se para criarem um novo formato que permitirá aumentar o desempenho dos programas executados pelos browsers: o WebAssembly.
Longe vão os tempos em que um browser apenas tinha que apresentar conteúdos em texto, com links a referenciar outros documentos. Actualmente, as páginas web são autênticos (e complexos) programas que estão a correr dentro de cada janela do browser; e onde se vai exigindo cada vez mais potência e desempenho.
Isso tem sido tentado sob a forma de projectos diversificados, como o Native Client do Google, ou o asm.js da Mozilla), todos com o objectivo de permitir que se criem programas que corram dentro do browser de forma idêntica à de um programa nativo a correr directamente no sistema. Mas finalmente parece que temos um projecto que reúne o apoio de todas as principais empresas e que por isso garantirá a compatibilidade alargada entre browsers, necessária para que o sistema tenha a confiança dos developers e comece a ser utilizado: o WebAssembly.
Com este formato, os developers poderão compilar os seus programas para este formato, com a garantia de que o mesmo será executado à máxima velocidade pelos browsers. Embora a sua execução continue a ser feita pelo motor de javascript, o facto de estar pré-compilado permite que se transfiram "megabytes" de código javascript em texto, que posteriormente teria que ser interpretado e processado pelo browser (também será do agrado dos developers ter um formato compilado que complica o acesso aos seus programas - e que actualmente obriga a que se faça obfuscação do código javascript, por exemplo).
Mesmo neste estado inicial, a execução do código WebAssembly é já 23x mais rápida que a interpretação de código asm.js, o que demonstra bem a sua potencialidade. E neste período transitório em que os browsers ainda não tiverem suporte generalizado para WebAssembly, será disponibilizada uma ferramenta que permite "descodificar" o formato para código javascript, de modo a poder correr em qualquer browser.
Mais um pequeno grande passo na direcção de usar a web como plataforma universal para tudo...
Publicado por Carlos Martins às 11:02
Browsers Google Javascript Microsoft Mozilla Web Developer WebAssembly WebKit
Subscrever:
Enviar feedback (Atom)
Sem comentários:
Enviar um comentário (problemas a comentar?)