WebAssembly es un proyecto realmente genial que compila otros lenguajes de código para que puedan ejecutarse en un navegador JavaScript. Es mucho más rápido que muchos de sus competidores. Permite que más datos y sitios de procesamiento funcionen de manera más fluida y rápida de lo que sería posible de otro modo. En este artículo, veremos la tecnología desde una perspectiva de arriba hacia abajo, preguntándonos qué es y por qué podría quererla o necesitarla.
¿Qué es WebAssembly?
Técnicamente, WebAssembly es formato de codificación binaria que, como dice la documentación original, «permite archivos pequeños, decodificación rápida y menor consumo de memoria». Fue diseñado para recuperar código de la máquina. Como lenguajes como C o C++ (o R etc). Luego compila esto en WebAssembly (o era m), que luego se ejecuta en el navegador, similar a JavaScript. Básicamente, descarga el código ejecutable y lo ejecuta en el navegador.
Para los desarrolladores, esto significa que puede trabajar más directamente con el navegador, como si estuviera interactuando con la computadora del usuario a nivel de máquina. Ya no tiene que pasar por los pasos a veces complicados que requiere JavaScript. WASM le permite ejecutar juegos y aplicaciones completos en su navegador como si estuvieran ejecutándose en la computadora misma. Es casi como si hubiera una máquina virtual perfecta ejecutando sus comandos. hay ejemplos fatalidad 3 solo se ejecuta en WebAssembly también figma.
Incluso si no tiene un proyecto tan ambicioso, WebAssembly merece una mirada, ya que puede acelerar casi cualquier sitio con mucho JS, ya que puede mantener los cálculos necesarios fuera de JavaScript y en manos de una herramienta que los maneja mejor.
¿Por qué WebAssembly en lugar de JavaScript?
En primer lugar, no pienses en ello como una decisión de uno u otro. Esto no es. WebAssembly fue diseñado para funcionar con JS, no para reemplazarlo. Algunos scripts se pueden ejecutar en JS, mientras que otros se ejecutan mediante WASM. Además, no es una tecnología marginal. En el momento de escribir este artículo, Chrome, Firefox, Safari, Android e incluso Microsoft Edge (!) son compatibles con WebAssembly.
Esta es una de las razones por las que navegar por WebAssembly para WordPress y otras aplicaciones web es tan atractivo. Ya se ha convertido en el estándar de codificación adoptado por todos los jugadores importantes. Incluye Microsoft. Y todos sabemos cuánto pueden dudar en tales asuntos. Entonces, si alguna vez hay una razón para comenzar a descubrir cómo usarlo, es este.
También sabemos que JavaScript puede hacer cosas increíbles (mira el nuevo WP Block Editor o Divi, ambos escritos en React.js). Pero no lo es Excelente en todo. WebAssembly proporciona herramientas de representación para imágenes y animaciones de alta calidad que se alinean con la funcionalidad y la interacción que espera de JavaScript.
Hasta WebAssembly, si deseaba hacer esto y dividir sus recursos y cálculos, se requerirían complementos y extensiones del navegador. Ahora, al trabajar con HTML5 y JavaScript, WASM hace que todo (aproximadamente) lo que desea compilar, ejecutar y representar en el navegador mismo. Sin pérdida de rendimiento o potencia.
Uso de WASM
Para empezar, necesitará algún código en C, C ++, R, etc. Luego debe descargar Incluir el SDKque le permite tomar este código y compilarlo en WASM.
Sin embargo, muchos de ustedes son creadores de sitios web y es posible que no tengan este nivel de poliglotismo. Está bien. También puedes escribir directamente a Estilo de texto WebAssembly¿Puedes realmente trabajar por tu cuenta? Mecanografiado en WASM.
Después de seguir estos pasos, la documentación de Mozilla lo describe mejor:
los [Emscripten] el documento HTML generado carga el archivo de enlace de JavaScript y escribe la salida estándar en
Luego lo ejecuta como cualquier otra aplicación web en su entorno o CMS. Además, hay una discusión entre los coautores sobre las posibilidades importar scripts WASM directamente como móduloscomo puedas con ECMAScript (ES6) ya. solo punto tipo de script = ‘módulo’ y eso origen estarán ejemplo.wasm en cambio ejemplo.js.
¿Es WebAssembly para usted?
Honestamente, para el usuario típico de WordPress, blogger y creador de contenido, y propietario de una pequeña empresa, WebAssembly probablemente nunca le interese. Y cuando Sí, puede acelerar su sitio por completo debido a la forma en que maneja los cálculos, probablemente no valga la pena atrapar a un desarrollador y hacer que reescriba las cosas solo para ese propósito. La mayoría de los sitios de WP no son lo suficientemente fuertes como para requerir la compresión y el cálculo que hacen brillar a WebAssembly.
Pero si usted es un desarrollador que usa la web como hogar para su aplicación web (y con eso nos referimos a aplicaciones web progresivas, no solo escaparates y servicios de entrega de contenido, a menos que sea muy popular), es probable que WebAssembly haga que su sitio funcione exponencialmente más rápido. . Si tiene mucha interacción y renderizado de gráficos, consulte WASM. Lo hará mejor. Si proporciona análisis y gestión de datos en tiempo real (por ejemplo, software de CRM), WebAssembly está hecho para usted.
Básicamente, si está haciendo toneladas de cálculos al mismo tiempo que sus usuarios interactúan con su sitio web, vale la pena echarle un vistazo a WebAssembly. Si está llamando a varios archivos y módulos de JavaScript independientes que se llaman, consulte WebAssembly. Existe una gran posibilidad de que su sitio web mejore significativamente con esto, no solo en el backend y la reducción de tamaño, sino también en el lado del usuario. Tendrán una experiencia mucho mejor con su producto.
¿Tienes experiencia con WebAssembly? ¿Qué proyectos consideras mejores para este formato?
Artículo destacado con una imagen de Sammba /shutterstock.com