DEV Community

Cover image for Haciendo tu Primer Proyecto con Deno 20
Diego Letelier
Diego Letelier

Posted on

Haciendo tu Primer Proyecto con Deno 20

Para introducir este tema, hay que comenzar definiendo que es deno. Deno, es un entorno de ejecución (runtime) para JavaScript, TypeScript y WebAssembly, desarrollado por Ryan Dahl, el creador de Node.js. Utiliza el motor V8 de Chrome y está escrito en Rust12.´

Ventajas

  1. Seguridad por defecto: Deno no tiene acceso a archivos, redes o entornos a menos que se le otorgue explícitamente. Esto reduce el riesgo de vulnerabilidades de seguridad.

  2. Soporte nativo para TypeScript: Deno ejecuta TypeScript de manera nativa sin necesidad de configuración adicional, lo que simplifica el desarrollo y mejora la productividad.

  3. Módulos estándar: Deno incluye un conjunto de módulos estándar revisados y auditados, lo que reduce la dependencia de paquetes externos y mejora la seguridad y estabilidad del código.

  4. Herramientas integradas: Viene con herramientas útiles como un inspector de dependencias, un formateador de código y un linter, lo que facilita el mantenimiento y la calidad del código.

  5. Manejo de dependencias: Deno utiliza URLs para importar módulos, eliminando la necesidad de un archivo package.json y un gestor de paquetes como npm. Esto simplifica la gestión de dependencias.

  6. Compatibilidad con WebAssembly: Deno soporta WebAssembly, lo que permite ejecutar código de alto rendimiento escrito en otros lenguajes.

Creando tu primer proyecto

Para partir con un proyecto de deno, hay que usar el siguiente comando:

 deno init <project_name>
Enter fullscreen mode Exit fullscreen mode

Esto creara un proyecto que tendrá lo siguiente

- project_name/
  |- main.ts
  |- deno.json
  |- main_test.ts
Enter fullscreen mode Exit fullscreen mode

Y listo, ya tienes creado tu primer proyecto de deno.

Acerca de los modulos e importaciones

Cuando se creaba un proyecto en astro, next.js y otros, se instalaban las dependencias vía npm, pnpm, bun, etc. Ahora esto ya no es necesario.

Formas de importar

Con deno, hay dos principales formas de importar paquetes. La primera es simplemente importando desde ese paquete ya sea npm u otro que utilices.

En algún archivo tuyo de Next.js, Vite o Astro por ejemplo, uno debia instalar el paquete requerido y luego importarlo dentro del archivo. Ahora, con deno, en vez de instalar el paquete, simplemente se importa dando como nombre su gestor de paquetes antes del paquete a requerir. Por ejemplo si quisiéramos utilizar express, se realizaría de esta manera:

  import express from "npm:express"
Enter fullscreen mode Exit fullscreen mode

Esto indica que quieres importar express, del paquete npm express, por lo que, repitiendo lo ya dicho, no necesitas instalarlo, simplemente importarlo!!!

O en segundo lugar, en vez de tener que importarlo con la nomenclatura de "npm:", lo que hacemos es editar el archivo deno.json creado, donde a este le agrega lo siguiente:

  "imports": {
  "express": "npm:express"
}
Enter fullscreen mode Exit fullscreen mode

Con el codigo agregado a deno.json ahora podras importar desde donde quieras solo con la palabra express de esta manera:

  import express from "express"
Enter fullscreen mode Exit fullscreen mode

Corre tu primer deno project

Finalmente, para correr el proyecto ya no se necesita usar npm run, ahora se usan los task como se muestra de la siguiente manera en el deno.json:

 "tasks": {
    "dev": "deno run --watch main.ts", //viene por defecto
  }
Enter fullscreen mode Exit fullscreen mode

Esto nos indica que para correr el proyecto, simplemente habría que hacer:

deno task dev
Enter fullscreen mode Exit fullscreen mode

Ya estarás corriendo tu proyecto de deno con typescript nativamente.

Espero te haya servido este mini tutorial y que disfrutes de esta nueva manera de hacer proyectos con un runtime de typescript nativo muy prometedor.

Top comments (0)