TeaVM es un compilador ahead-of-time que transforma bytecode de Java en JavaScript o WebAssembly, permitiendo ejecutar aplicaciones Java directamente en el navegador sin necesidad de reescribirlas en JavaScript. Es útil para quienes quieren aprovechar su código Java (o incluso Kotlin y Scala) en entornos web modernos. Es similar a lo que se hacía con GWT (Google Web Toolkit). Convertir tu código Java a código Javascript. En este blog ya hemos hablado de WebAssembly: WebAssembly con Rust. WebAssembly con Python. WebAssembly con C/C++ Creando un proyecto Java (y TeaVM) 1. Creamos nuestro proyecto Java con Maven: $ mvn - DarchetypeCatalog = local - DarchetypeGroupId = org . teavm - DarchetypeArtifactId = teavm - maven - webapp - DarchetypeVersion = 0.13.1 archetype:generate $ cd demo - teavm 2. Una vez ubicados en el directorio creado modificaremos el programa principal `` MainClass.java ``. package com.inforhomex.web ; impor...
WebAssembly es un lenguaje de bajo nivel, similar a ensamblador, diseñado para ser rápido de cargar y ejecutar en navegadores modernos. Su objetivo es permitir que aplicaciones escritas en distintos lenguajes se ejecuten en la web con velocidad casi nativa . Los formatos que soporta son: .wasm : un formato binario ejecutable. .wat : un formato formato de texto legible. Se complementa con JavaScript; permite invocar funciones WASM desde JS y viceversa. Como hemos visto en este blog: Si quieres usar WebAssembly con C/C++ tendrás que usar Emscripten . Si quieres usar WebAssembly con Python puedes usar Pyodide . También puedes optar por usar un lenguaje como Grain cuya compilación es directa a WASM . ¿Cuál es el objetivo de WebAssembly? El objetivo de WebAssembly es compilar código escrito en lenguajes como Rust, C o C++ (entre otros) y transformarlo en un módulo .wasm que puede ejecutarse en navegadores o en entornos como Node.js con rendimi...