WebAssembly - Descripción general
WebAssembly es un nuevo lenguaje de programación de computadoras para la web. El código de WebAssembly es un formato binario de bajo nivel, que es compatible con la web y se puede ejecutar fácilmente en los navegadores web modernos. El tamaño del archivo generado es pequeño y se carga y ejecuta más rápido. Ahora puede compilar lenguajes como C, C ++, Rust, etc. en formato binario y puede ejecutarse en la web como javascript.
Definición de WebAssembly
Según el sitio web oficial de WebAssembly, que está disponible en https://webassembly.org/, se define como WebAssembly (abreviado como Wasm) es un formato de instrucción binaria para una máquina virtual basada en pila. Wasm está diseñado como un objetivo portátil para la compilación de lenguajes de alto nivel como C / C ++ / Rust, lo que permite la implementación en la web para aplicaciones de cliente y servidor.
Web Assembly no es algo que deba escribir un desarrollador, pero el código está escrito en lenguajes como C, C ++, Rust y se puede compilar en WebAssembly (wasm). El mismo código se puede ejecutar dentro de los navegadores web.
Web Assembly es un nuevo lenguaje, el código es un lenguaje ensamblador de bajo nivel, pero con su función de formato de texto, el código es legible y la depuración es posible si es necesario.
Objetivos de WebAssembly
Los estándares abiertos para WebAssembly se desarrollan en un Grupo de la comunidad del W3C que incluye representantes de todos los navegadores principales, así como un Grupo de trabajo del W3C.
Los principales objetivos de WebAssembly se mencionan a continuación:
Faster, Efficient and Portable - El código de WebAssembly está destinado a ejecutarse más rápido en diferentes plataformas aprovechando el hardware disponible.
Easy to read and debug - WebAssembly, al ser un lenguaje ensamblador de bajo nivel, tiene soporte de formato de texto, que le permite depurar el código por cualquier problema y también reescribir el código, si es necesario.
Security - WebAssembly es seguro de ejecutar en los navegadores web, ya que se encarga de los permisos y las políticas del mismo origen.
Ventajas de WebAssembly
Las siguientes son las ventajas de WebAssembly:
Run is Modern Browsers - WebAssembly se puede ejecutar sin problemas en los navegadores web modernos que están disponibles.
Multiple Language support- Los lenguajes como C, C ++, Rust, Go ahora pueden compilar el código en WebAssembly y ejecutar el mismo en los navegadores web. Por lo tanto, los idiomas que no podían ejecutarse en un navegador ahora podrán hacerlo.
Faster, Efficient and Portable - Debido al pequeño tamaño del código, se carga y se ejecuta más rápido.
Easy to understand- Los desarrolladores no tienen que esforzarse mucho en comprender la codificación de WebAssembly, ya que no tienen que escribir el código en WebAssembly. En su lugar, compile el código en WebAssembly y ejecútelo en la web.
Easy to Debug - Aunque el código final está en lenguaje ensamblador de bajo nivel, también puede obtenerlo en formato de texto, que es fácil de leer y depurar.
Desventajas de WebAssembly
Las siguientes son las desventajas de WebAssembly:
Todavía se está trabajando en WebAssembly y es demasiado pronto para decidir su futuro.
WebAssembly depende de javascript para interactuar con el modelo de objetos de documento (DOM).