Curso de programación con Nest
NestJS es el framework para construir aplicaciones backend escalables y eficientes en Node.js. Aprende a desarrollar con NestJS y mejora tu backend.
NestJS es un framework para construir aplicaciones de servidor eficientes, fiables y escalables en TypeScript (o JavaScript). Se basa en el patrón de diseño de programación orientada a objetos (OOP), programación funcional y programación reactiva. NestJS utiliza el framework Express.js por debajo, pero también ofrece compatibilidad con otras bibliotecas como Fastify, lo que permite una fácil migración.
Características principales
- Escalabilidad: Diseñado con la escalabilidad en mente, permitiendo una arquitectura modular y fácil de mantener.
- Inyección de dependencias: Incorpora un potente sistema de inyección de dependencias directamente desde el inicio, lo que facilita la gestión de componentes y servicios.
- Desacoplamiento: Fomenta el desacoplamiento y la modularidad, lo que facilita las pruebas y la mantenibilidad del código.
- Decoradores: Utiliza decoradores para simplificar varias tareas, como la definición de rutas y la inyección de dependencias.
- Soporte para GraphQL y REST: Puedes crear tanto API REST como GraphQL sin esfuerzo.
- Soporte para Websockets y Microservicios: Incorpora soluciones fáciles para implementar comunicación en tiempo real y arquitecturas de microservicios.
- Integración con bibliotecas de front-end: Ofrece un desarrollo más fácil al integrarse con frameworks de front-end como Angular.
Ventajas frente a otros frameworks
- Arquitectura bien definida: A diferencia de otros frameworks como Express.js, que no imponen una arquitectura específica, NestJS proporciona una estructura clara que facilita la escalabilidad y el mantenimiento.
- Productividad: Los decoradores y la inyección de dependencias permiten un desarrollo más rápido y menos propenso a errores.
- TypeScript: Al estar construido con TypeScript, se beneficia de las ventajas del tipado estático, como la detección de errores en tiempo de compilación.
- Ecosistema completo: Ofrece una amplia gama de utilidades, desde la autenticación hasta la capa de acceso a datos, lo que permite un desarrollo más rápido sin depender de terceros.
- Comunidad y documentación: Tiene una comunidad creciente y una documentación extensa, lo que facilita el aprendizaje y la resolución de problemas.
¿Por qué aprenderlo y usarlo?
- Mercado Laboral: La demanda de NestJS está en aumento, especialmente para proyectos empresariales.
- Desarrollo Rápido: Las características como la inyección de dependencias y los decoradores permiten un desarrollo más ágil.
- Fácil de aprender: Si ya tienes experiencia con Angular o TypeScript, te resultará más fácil adaptarte a NestJS.
- Arquitectura Sólida: Aprenderás principios de arquitectura sólida que puedes aplicar en otros proyectos y lenguajes.
- Versatilidad: Puedes usarlo para una amplia variedad de aplicaciones, desde pequeños proyectos hasta aplicaciones empresariales a gran escala.
Tutoriales de Nest
Aprende Nest con tutoriales de programación en Nest.
Instalación Nestjs
Introducción Y Entorno
Comandos Nestjs Cli
Introducción Y Entorno
Métodos Get En Controladores
Controladores
Métodos Post En Controladores
Controladores
Métodos Put En Controladores
Controladores
Métodos Delete En Controladores
Controladores
Gestión De Errores En Controladores
Controladores
Recibir Y Servir Imágenes
Controladores
Desarrollo E Inyección De Servicios
Servicios E Inyección De Dependencias
Crear Y Utilizar Módulos
Módulos
Configuración De Typeorm Con Mysql
Typeorm
Creación De Entidades Y Tablas
Typeorm
Decoradores En Entidades
Typeorm
Crud Con Repositorios
Typeorm
Filtrados En Consultas De Repositorios
Typeorm
Registro De Usuarios
Autenticación
Iniciar Sesión Método De Login
Autenticación
Estrategia De Autenticación Jwtstrategy
Autenticación
Login Y Registro
Autenticación
Estrategia De Autenticación Jwt
Autenticación
Ejercicios de programación de Nest
Evalúa tus conocimientos en Nest con ejercicios de programación Nest de tipo Test, Puzzle, Código y Proyecto con VSCode.
Métodos GET en controladores
Método find en un servicio con repositorio
Desarrollo e inyección de servicios
Creación de entidades y tablas
Método DELETE en un controlador
Filtrados en consultas de repositorios
Método GET en un controlador
Estrategia de autenticación JwtStrategy
CRUD con repositorios
Método delete en un servicio con repositorio
API REST CRUD de entidad Restaurante con TypeORM
Creación de una entidad TypeORM
Crear y utilizar módulos
Métodos PUT en controladores
Iniciar sesión método de login
Configuración de TypeORM con MySQL
Gestión de errores en controladores
Decoradores en entidades
Instalación NestJS
Recibir y servir imágenes
Estrategia de autenticación JWT
Método PUT en un controlador
Comandos NestJS CLI
Método POST en un controlador
Login y registro
API REST CRUD de entidades Product y Manufacturer
Método save en un servicio con repositorio
Registro de usuarios
Métodos POST en controladores
Tipo de tecnología
Framework
Categoría laboral
Backend
Año de lanzamiento
2017
Developers
Kamil Mysliwiec
Todos los módulos de Nest
Nest
Introducción y entorno
Nest
Controladores
Nest
Servicios e inyección de dependencias
Nest
Módulos
Nest
TypeORM
Nest
Autenticación
Otras tecnologías
Vuejs
Vuejs
Frontend
Framework de JS progresivo para construir interfaces de usuario reactivas y modulares.
TypeScript
TypeScript
Full Stack
Superconjunto de JavaScript con tipado estático.
Java
Java
Backend
Lenguaje de programación versátil y multiplataforma.
SpringBoot
SpringBoot
Backend
Framework para desarrollo rápido de aplicaciones Java.
CSharp
CSharp
Backend
Lenguaje de programación de Microsoft para aplicaciones robustas.
Git
Git
DevOps
Sistema de control de versiones distribuido.
React
React
Frontend
Librería framework para frontend interfaces de usuario.
Docker
Docker
DevOps
Plataforma de contenedores para aplicaciones portátiles.
Go
Go
Backend
Lenguaje de programación eficiente y concurrente creado por Google.
SQL
SQL
Administración de bases de datos
Lenguaje para gestionar bases de datos relacionales.
TailwindCSS
TailwindCSS
Frontend
Framework de utilidades CSS para diseños rápidos y personalizables.
HTML
HTML
Frontend
Lenguaje de marcado para estructurar contenido web.
Numpy
Numpy
Ciencia de Datos e Inteligencia artificial
Biblioteca Python para computación científica y matrices.
Bash
Bash
Administración de sistemas
Intérprete de comandos para sistemas Unix y Linux.
Matplotlib
Matplotlib
Ciencia de Datos e Inteligencia artificial
Biblioteca Python para crear gráficos y visualizaciones.
Bootstrap
Bootstrap
Frontend
Framework CSS para diseños web responsive y modernos.
Hibernate
Hibernate
Backend
ORM para Java, simplifica el acceso a bases de datos.
JavaScript
JavaScript
Full Stack
Lenguaje de scripting para desarrollo web interactivo.