Duración: 12 clases
Modalidad: Presencial o virtual
Requisitos: 2 a 3 horas por clase (teoría y práctica)


¿Para quién es este curso?

El curso está dirigido a personas con conocimientos básicos de .NET Core y C# que desean profundizar en el desarrollo de aplicaciones backend, APIs RESTful avanzadas y buenas prácticas de programación.

Conocimientos previos requeridos:

  • Familiaridad con la estructura de proyectos en .NET Core.
  • Conocimiento básico de C# (POO, estructuras de control, métodos).
  • Experiencia inicial con APIs RESTful y Entity Framework Core.

Objetivo del curso

Al finalizar, el estudiante será capaz de:

  • Construir aplicaciones backend más avanzadas y eficientes con .NET Core.
  • Implementar autenticación y autorización en APIs RESTful.
  • Optimizar la interacción con bases de datos mediante técnicas avanzadas de Entity Framework Core.
  • Desarrollar aplicaciones escalables utilizando buenas prácticas.

Temario

Clase 1: Repaso y Configuración de Proyectos Avanzados

  • Repaso de conceptos clave de .NET Core inicial.
  • Configuración avanzada de proyectos: Startup, middlewares y servicios.
  • Introducción al patrón de diseño Dependency Injection.

Práctica: Crear un proyecto base para APIs RESTful utilizando Dependency Injection.


Clase 2: Arquitectura Basada en Capas

  • Concepto y beneficios de la arquitectura en capas (Controlador, Servicio, Repositorio).
  • Separación de responsabilidades.
  • Creación de interfaces y su implementación.

Práctica: Implementar una arquitectura en capas para un sistema de gestión de usuarios.


Clase 3: Entity Framework Core Avanzado (Parte 1)

  • Creación de relaciones complejas: One-to-Many, Many-to-Many.
  • Uso de migraciones avanzadas y personalizadas.
  • Consultas LINQ avanzadas (proyecciones, filtros dinámicos).

Práctica: Crear un modelo relacional que incluya categorías y productos, con consultas avanzadas.


Clase 4: Entity Framework Core Avanzado (Parte 2)

  • Optimización de consultas con AsNoTracking y Eager Loading.
  • Transacciones en Entity Framework Core.
  • Manejo de errores relacionados con la base de datos.

Práctica: Implementar transacciones para un flujo de compra de productos.


Clase 5: Introducción a Autenticación y Autorización

  • Diferencias entre autenticación y autorización.
  • Introducción a JSON Web Tokens (JWT).
  • Configuración de autenticación con JWT en .NET Core.

Práctica: Implementar un sistema de inicio de sesión con generación de tokens JWT.


Clase 6: Autorización Basada en Roles

  • Creación y validación de roles.
  • Protección de endpoints con políticas y atributos.
  • Manejo de usuarios autenticados.

Práctica: Configurar roles como «Administrador» y «Usuario» en una API y proteger rutas según el rol.


Clase 7: Middleware Personalizado

  • ¿Qué es un middleware y cómo funciona en el pipeline de solicitudes?
  • Creación de middlewares personalizados.
  • Uso de middlewares para registrar logs y manejar excepciones globales.

Práctica: Crear un middleware para registrar solicitudes en un archivo de texto.


Clase 8: Paginación, Ordenamiento y Filtros en APIs

  • Implementación de paginación y ordenamiento en controladores.
  • Creación de filtros avanzados dinámicos.
  • Respuesta estandarizada con ActionResult y códigos HTTP.

Práctica: Crear una API que permita listar, filtrar y paginar productos.


Clase 9: Integración con Servicios Externos

  • Consumo de APIs externas con HttpClient.
  • Manejo de respuestas y errores en servicios externos.
  • Introducción a librerías como Refit para consumo simplificado.

Práctica: Consumir una API pública de clima y mostrar los datos en una aplicación.


Clase 10: Introducción a Pruebas Unitarias y Mocking

  • Conceptos básicos de pruebas unitarias.
  • Configuración de un proyecto de pruebas con xUnit o NUnit.
  • Uso de librerías de mocking como Moq.

Práctica: Escribir pruebas unitarias para los métodos del servicio de gestión de usuarios.


Clase 11: Implementación de Logs y Monitorización

  • Introducción a herramientas de logging como Serilog y NLog.
  • Configuración y almacenamiento de logs en bases de datos o archivos.
  • Integración con sistemas de monitoreo (por ejemplo, Application Insights).

Práctica: Configurar logs estructurados en una API RESTful.


Clase 12: Proyecto Final

  • Desarrollo de una API completa utilizando los conceptos aprendidos:
    • CRUD con Entity Framework Core.
    • Autenticación y autorización con JWT.
    • Paginación, filtros y logs.
  • Integración con una base de datos relacional.

Práctica: Presentación del proyecto final por los estudiantes.


Al Finalizar el Curso

El estudiante será capaz de:

  1. Diseñar aplicaciones backend intermedias con .NET Core y C#.
  2. Implementar seguridad en APIs utilizando autenticación y autorización.
  3. Optimizar el acceso a datos con técnicas avanzadas de Entity Framework Core.
  4. Escribir pruebas unitarias para validar la funcionalidad de los servicios.

Este curso prepara a los estudiantes para avanzar al desarrollo avanzado con .NET Core, incluyendo microservicios y arquitecturas distribuidas.

Precio

170.000$ Ciento Setenta Mil pesos Argentinos
Cuotas sin interes

Nombre