Me llamo Jared y voy a hablar sobre BUN. BUN es un entorno de ejecución de JavaScript moderno todo en uno. Está diseñado para iniciarse rápidamente, alcanzar nuevos niveles de rendimiento, ser una gran y completa herramienta, y ser un reemplazo directo de Node.js.
BUN dev es un servidor de desarrollo de front-end que se inicia en 4 milisegundos. Es un comando integrado en BUN. BUN install es un gestor de paquetes NPM y instala paquetes 20 veces más rápido que cualquier otro cliente de NPM que exista hoy en día. BUN run es un ejecutor de scripts JSON de paquetes NPM y inicia los scripts 30 veces más rápido que NPM.
En BUN v0.3.0, agregamos la instalación automática de paquetes NPM al entorno de ejecución de JavaScript de BUN. Esto significa que simplemente puedes importar paquetes y se instalarán. No es necesario ejecutar un paso de instalación. Esto se habilita automáticamente cuando no hay una carpeta de módulos de Node. Aún funciona con los módulos de Node, simplemente significa que cuando no tienes módulos de Node, si tienes un script rápido que quieres ejecutar y no quieres lidiar con la instalación de paquetes, simplemente funciona. Lo interesante de esto es que no necesitas una carpeta de módulos de Node, lo que ahorra mucho espacio en disco y tiempo, ya que no tienes que pasar tiempo instalando los paquetes. Utiliza una caché global compartida.
En BUN, JSX es compatible de forma nativa. Hay un transpilador automático de JSX/TypeScript, incluso se habilita JSX para archivos .JS, y también puedes tener paquetes NPM que usen JSX y BUN los transpilará automáticamente. Puedes usar console.log con JSX, puedes hacer JSX prop punting y tenemos una renderización optimizada de React en el servidor.
Así es como se ve cuando usas console.log en un elemento JSX en BUN. Puedes ver que en lugar de imprimir la representación del objeto con los símbolos y todo eso, lo muestra de forma legible como HTML. Aún conserva la función o resalta el componente en azul en lugar de verde para indicar que es un elemento en lugar de un componente. Y así es como se ve JSX prop hunting en BUN. Hay más de un nombre para esto, pero la idea básica es que en lugar de tener que escribir si el nombre de la propiedad es el mismo identificador que el valor, simplemente puedes omitir el valor. Es equivalente a la sintaxis de desestructuración de objetos, pero para JSX. No creo que haya otras herramientas que admitan esto aún. En la próxima versión de React, están agregando un nuevo renderizado de servidor de transmisión de BUN, lo que ayuda a que BUN sea tres veces más rápido en la renderización en el servidor en comparación con cuando se usa la compilación server.browser, que es la que BUN usa actualmente. En general, esto se traduce en una renderización en el servidor cuatro veces más rápida en BUN en comparación con Node.
Esta prueba de referencia es una prueba de Hello World para una aplicación muy simple de React. Si has utilizado algún framework en el pasado para construir cosas de front-end con React, probablemente hayas usado la recarga de módulos en caliente. Por lo general, la recarga de módulos en caliente es algo que existe en el cliente y se ejecuta en los navegadores. Pero en BUN, BUN tiene soporte incorporado para la recarga de módulos en caliente en el servidor.
Comments