Acerca de Wasim
¡Debido a las necesidades de los proyectos de la empresa, lo principal ahora es cerrar Flash (se hace con AS3.0 por razones históricas)! Ahora todo cambió a C++ y se lanzó la versión para PC y la versión web. La versión web utiliza Wasm (tecnología WebAssembly).
WASM, nombre completo: WebAssembly, es una solución técnica para lenguajes de programación no Java que se puede utilizar para escribir código y ejecutarlo en el navegador. También es la primera alternativa nativa a Java desde la aparición de Java. nacimiento de la Web. Los programas están escritos por naturaleza, es decir, las instrucciones son traducidas y ejecutadas por el programa en lugar de leídas y ejecutadas por la CPU de la máquina local, por lo que son muy ineficientes.
Java, por otro lado, es relativamente repetitivo y engorroso, y lleva mucho tiempo ejecutarlo. De hecho, la intención original de crear Wasm no era reemplazar JavaScript, sino complementar y cooperar con ambos. Con la introducción de WebAssembly, las máquinas virtuales de los navegadores web modernos ejecutarán código JavaScript y Wasm.
WebAssembly es mucho más radical que asm.js. WebAssembly ni siquiera necesita anotar cosas como Js, ¿no quiere AOT? Sólo te daré el código de bytes, ¿de acuerdo? (luego cambiado al árbol AST).
Para los navegadores que no admiten WebAssembly, existe un Javascript que puede volver a traducir WebAssembly a Javascript para ejecutarlo. Esta técnica se llama polyfill y era una técnica muy común cuando se introdujo HTML5 por primera vez.
La razón para usar AST es que es más fácil de comprimir y traducir que el código de bytes. Si no conoce AST, aquí tiene un diagrama que muestra el proceso de ejecución del motor Javascript. Javascript se compila primero en un AST y luego en un código de bytes. AST es un nivel más abstracto que el código de bytes.
Ventajas técnicas de Wasm:
Rendimiento y eficiencia:
Rendimiento y eficiencia:
WASM utiliza codificación binaria para garantizar que durante el programa ejecución Proporciona un rendimiento excelente.
Bajo coste de almacenamiento: el texto codificado en binario ocupa menos espacio de almacenamiento que los formatos de texto.
Soporte multilingüe: los usuarios pueden escribir contratos inteligentes en C/C++/RUST/Go y compilarlos en código de bytes en formato WASM.
Máquina virtual de WebAssembly
WebAssembly (abreviado como Wasm) es un formato de instrucción binaria basado en una máquina virtual de pila. WASM está diseñado para compilar de forma portátil lenguajes de alto nivel como C/C++/RUST para permitir que las aplicaciones de cliente y servidor se implementen en la Web.
WASM está disponible en una variedad de implementaciones, incluidos navegadores y sistemas independientes, y puede usarse en aplicaciones como códecs de video y audio, gráficos y 3D, multimedia y juegos, computación criptográfica o portátiles. Implementaciones del lenguaje.
Emscripten instala el compilador Emscripten, que es una de las herramientas más importantes para el desarrollo de WebAssembly y se ejecuta principalmente a través de emcc (EmscriptenCompilerFrontend). Esta es una herramienta de línea de comandos.