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?

Este curso está diseñado para desarrolladores experimentados que buscan:

  • Diseñar y liderar proyectos empresariales utilizando .NET Core.
  • Implementar arquitecturas modernas y escalables.
  • Profundizar en conceptos como DDD, microservicios y sistemas distribuidos.

Conocimientos previos requeridos:

  • Experiencia avanzada en .NET Core y C#.
  • Familiaridad con patrones de diseño y arquitectura en capas.
  • Conocimiento intermedio de microservicios y contenedores.

Objetivo del curso

Al finalizar, el estudiante será capaz de:

  • Diseñar arquitecturas empresariales modernas utilizando .NET Core.
  • Implementar soluciones distribuidas y escalables basadas en microservicios.
  • Liderar equipos técnicos en el diseño y desarrollo de sistemas complejos.
  • Aplicar buenas prácticas y estándares en proyectos empresariales.

Temario

Clase 1: El Rol del Arquitecto y Principios Fundamentales

  • Responsabilidades y habilidades clave de un arquitecto.
  • Principios de diseño: SOLID, DRY, KISS, y YAGNI.
  • Introducción a los estilos arquitectónicos: monolítico, microservicios y serverless.

Práctica: Evaluar un caso de estudio y proponer mejoras arquitectónicas.


Clase 2: Diseño de Arquitecturas Empresariales

  • Diferencia entre arquitecturas monolíticas y distribuidas.
  • Introducción a Domain-Driven Design (DDD).
  • Identificación de contextos delimitados (bounded contexts).

Práctica: Diseñar un modelo de dominio inicial para un sistema de facturación.


Clase 3: Arquitectura Limpia y Patrón Hexagonal

  • Introducción a Clean Architecture y el Patrón Hexagonal.
  • Separación de responsabilidades: capas de dominio, aplicación e infraestructura.
  • Implementación práctica de Clean Architecture en un proyecto .NET Core.

Práctica: Crear la estructura inicial de un proyecto utilizando Clean Architecture.


Clase 4: Diseño y Gestión de Microservicios

  • Principios de microservicios: autonomía, escalabilidad y resiliencia.
  • Identificación de límites de servicio y comunicación entre microservicios.
  • Introducción a patrones de diseño en microservicios: API Gateway, BFF, y Circuit Breaker.

Práctica: Diseñar un sistema basado en microservicios para gestionar órdenes.


Clase 5: Implementación de Patrones Avanzados en .NET Core

  • Introducción a CQRS (Command Query Responsibility Segregation).
  • Uso de Event Sourcing para sistemas basados en eventos.
  • Implementación con librerías como MediatR y MassTransit.

Práctica: Implementar CQRS en un microservicio para gestionar inventarios.


Clase 6: Seguridad en Arquitecturas Empresariales

  • Diseño de seguridad en sistemas distribuidos.
  • Implementación de OAuth2 y OpenID Connect con IdentityServer.
  • Protección de datos sensibles con técnicas de cifrado y tokenización.

Práctica: Configurar un sistema de autenticación centralizado para una arquitectura distribuida.


Clase 7: Optimización de Arquitecturas

  • Técnicas para mejorar el rendimiento en aplicaciones empresariales.
  • Implementación de cachés distribuidas con Redis.
  • Uso de compresión y optimización de consultas en APIs y bases de datos.

Práctica: Optimizar el rendimiento de una API con caché y consultas eficientes.


Clase 8: Contenedores y Orquestación

  • Diseño de arquitecturas contenerizadas con Docker.
  • Uso de Kubernetes para orquestar aplicaciones distribuidas.
  • Introducción a Helm para gestionar configuraciones complejas.

Práctica: Desplegar una arquitectura de microservicios en un clúster de Kubernetes.


Clase 9: Monitoreo y Observabilidad

  • Principios de observabilidad en sistemas empresariales.
  • Configuración de logs distribuidos con Serilog y Elastic Stack.
  • Introducción a OpenTelemetry para trazas y métricas.

Práctica: Implementar monitoreo y trazas distribuidas en un sistema basado en microservicios.


Clase 10: Gestión de Integraciones y Sistemas Legacy

  • Diseño de integraciones con APIs externas y sistemas heredados.
  • Uso de herramientas como RabbitMQ y Kafka para mensajería y eventos.
  • Migración de sistemas monolíticos a arquitecturas modernas.

Práctica: Diseñar una estrategia de integración para migrar un sistema legado a microservicios.


Clase 11: Buenas Prácticas en Arquitectura

  • Documentación técnica y diagramas arquitectónicos.
  • Implementación de pipelines CI/CD con Azure DevOps o GitHub Actions.
  • Pruebas de rendimiento y carga en sistemas empresariales.

Práctica: Crear un pipeline CI/CD para automatizar el despliegue de un sistema contenerizado.


Clase 12: Proyecto Final

  • Desarrollo de un proyecto completo que combine:
    • Clean Architecture.
    • Microservicios y patrones como CQRS y Event Sourcing.
    • Contenerización y orquestación con Kubernetes.
    • Seguridad con OAuth2.
    • Monitoreo con OpenTelemetry.
  • Presentación y discusión del proyecto final.

Práctica: Implementar y presentar una arquitectura completa para un sistema empresarial.


Al Finalizar el Curso

El estudiante será capaz de:

  1. Diseñar y liderar arquitecturas empresariales modernas utilizando .NET Core.
  2. Implementar microservicios y sistemas distribuidos con estándares de la industria.
  3. Configurar y administrar entornos contenerizados y orquestados.
  4. Optimizar aplicaciones para escalabilidad, seguridad y rendimiento.
  5. Documentar y comunicar estrategias arquitectónicas a equipos técnicos y gerenciales.

Precio

200.000 trescientos mil pesos argentinos
Cuotas sin interes

Nombre