Introducción a NestJS
NestJS es un framework progresivo de Node.js diseñado para construir aplicaciones de servidor (backend) eficientes, confiables y escalables. Está construido con TypeScript de forma nativa y combina elementos de la Programación Orientada a Objetos (POO), la Programación Funcional (FP) y la Programación Reactiva Funcional (FRP).
Primeros Pasos con NestJS
NestJS organiza las aplicaciones de backend mediante una estructura modular inspirada en patrones de nivel empresarial. En esta guía práctica aprenderás a instalar el CLI, instanciar un nuevo proyecto, comprender su arquitectura interna y construir tus propios módulos, controladores y servicios.
Configuración de TypeORM y Entidades
En la guía anterior construimos el módulo de usuarios utilizando almacenamiento en memoria. Sin embargo, en un entorno de producción necesitamos persistencia real en una base de datos relacional. TypeORM es el puente entre nuestro código TypeScript en NestJS y el motor de base de datos PostgreSQL. Esta guía muestra cómo traducir diagramas de entidad-relación (ER) a entidades decoradas de TypeScript y configurar la infraestructura con Docker Compose.
Inyección de Dependencias y Providers
En las guías anteriores exploramos los fundamentos de NestJS, creamos controladores y servicios en memoria, y modelamos entidades relacionales con TypeORM y PostgreSQL. Sin embargo, para que todos estos elementos operen armónicamente en un backend escalable y mantenible, es indispensable comprender cómo se comunican las capas entre sí: la Inversión de Control (IoC), la Inyección de Dependencias (DI) y los Providers.
Repositorios y Consultas con TypeORM
Una vez modeladas las entidades y configurados los providers en NestJS, el paso fundamental es interactuar con los datos persistidos. En lugar de escribir sentencias SQL manuales en los servicios, NestJS y TypeORM implementan el Patrón Repositorio, una abstracción orientada a objetos que permite consultar, insertar, modificar y eliminar registros mediante métodos seguros y fuertemente tipados.
Slides de la semana
Diapositivas oficiales correspondientes a la Semana 5: Introducción a NestJS, Ciclo de Vida HTTP (Request Lifecycle), Arquitectura por Capas, Inversión de Control (IoC), Módulos y Persistencia con TypeORM.