Contacta con nosotros

Temario del curso

Introducción a la Plataforma Moderna .NET

  • Visión general del tiempo de ejecución, SDK y plataforma unificada de .NET 8.
  • Comparación de la evolución de .NET Framework, .NET Core y .NET 8+.
  • Estructura del proyecto, marcos objetivo y nociones básicas de multiobjetivo.
  • Configuración del entorno de desarrollo y herramientas.

C# Moderno y Prácticas del Lenguaje Orientadas al Futuro

  • Registros (records), setters init-only y patrones de inmutabilidad.
  • Mejoras en el emparejamiento de patrones y expresiones switch.
  • Tipos de referencia anulables y seguridad impulsada por el compilador.
  • Mejores prácticas de async/await y transmisión eficiente en memoria.
  • Matemáticas genéricas, abstracts estáticos en interfaces y APIs orientadas al rendimiento.
  • Preparación de bases de código para las características C# 12/13 en .NET 8.

Fundamentos de ASP.NET Core e Inicio de Aplicación

  • Constructor del host, tubería de middleware y ciclo de vida de la solicitud.
  • APIs mínimas frente a APIs basadas en controladores: criterios de decisión.
  • Proveedores de configuración, ajustes específicos del entorno y gestión de secretos.
  • Archivos estáticos, enrutamiento y convenciones de puntos finales.
  • Configuración del contenedor de inyección de dependencias y ciclos de vida de servicios.

Diseño e Implementación de APIs REST

  • Modelo de madurez REST, modelado de recursos y diseño de URI.
  • Métodos HTTP, códigos de estado y negociación de contenido.
  • Validación de solicitudes, enlace de modelos e integración con FluentValidation.
  • Estrategias de versionado para APIs públicas e internas.
  • Documentación con OpenAPI y Swagger UI.
  • Pruebas de integración de APIs con TestServer y WebApplicationFactory.

Inyección de Dependencia Empresarial e Inversión de Control

  • Inyección por constructor, ciclos de vida de servicios y dependencias cautivas.
  • Patrones decorador y factoría con el contenedor integrado.
  • Integración de Scrutor y bibliotecas DI de terceros.
  • Registro modular de servicios y organización basada en características.
  • Preocupaciones transversales (cross-cutting) mediante middleware y filtros.

Registro, Configuración y Manejo Centralizado de Errores

  • Registro estructurado con Microsoft.Extensions.Logging y Serilog.
  • Niveles de registro, ámbitos, enriquecimiento y configuración de sinks (destinos).
  • Middleware de excepciones y tuberías globales de manejo de errores.
  • ProblemDetails y respuestas de error compatibles con RFC 7807.
  • Comprobaciones de salud, telemetría y ganchos de observabilidad.
  • ID de correlación y preparación para rastreo distribuido.

Arquitectura de Software para Soluciones Empresariales .NET

  • Principios de arquitectura en capas, hexagonal y limpia.
  • Elementos básicos del diseño dirigido por el dominio (DDD) en .NET.
  • Patrones CQRS y mediador con MediatR.
  • Patrones repositorio y unidad de trabajo con EF Core.
  • Arquitectura de rebanadas verticales para cohesión de funciones.
  • Evaluación de compensaciones entre monolito, monolito modular y microservicios.

Seguridad para Aplicaciones Web y APIs

  • Esquemas de autenticación: JWT, OAuth2, OpenID Connect y flujos basados en cookies.
  • Políticas de autorización, acceso basado en reclamaciones y protectores basados en recursos.
  • Aplicación de HTTPS, HSTS y middleware de encabezados seguros.
  • Sanitización de entradas, codificación de salidas y mitigación del Top 10 de OWASP.
  • Límite de tasa (rate limiting), políticas CORS y manejo de tokens antifalsificación.
  • Gestión de secretos con Azure Key Vault y rotación impulsada por el entorno.

Calidad del Código, Mantenibilidad y Mejores Prácticas

  • Estándares de codificación, EditorConfig y dotnet format.
  • Análisis estático con analizadores Roslyn e integración con SonarQube.
  • Pruebas unitarias con xUnit, simulación (mocking) con Moq o NSubstitute.
  • Pruebas de integración y de contrato en tuberías CI.
  • Técnicas de refactorización para módulos heredados de larga duración.
  • Documentación, contratos de API y prácticas de intercambio de conocimientos.

Estrategia de Modernización: Evaluación del Código Legado de .NET Framework

  • Análisis de portafolio: clasificar aplicaciones por criticidad, complejidad y valor empresarial.
  • Uso de .NET Upgrade Assistant y analizador de compatibilidad.
  • Identificación de APIs obsoletas, dependencias específicas de la plataforma y brechas de terceros.
  • APIs específicas de Windows y consideraciones de migración de WCF.
  • Creación de una hoja de ruta de migración con priorización basada en riesgos.

Técnicas de Migración Progresiva y Coexistencia

  • Patrión Strangler Fig (Figura estranguladora): reemplazo incremental de subsistemas heredados.
  • Migración primero con la API: exposición de dominios .NET Framework a través de fachadas REST.
  • Puente basado en mensajes con RabbitMQ, Azure Service Bus o Kafka.
  • Coexistencia de bases de datos compartidas y estrategias de versionado de esquemas.
  • Ejecución lado a lado de .NET Framework y .NET 8 en la misma infraestructura.
  • Contenedorización de componentes modernos mientras se deja el legado en IIS.

Laboratorio Práctico de Migración y Revisión

  • Aplicar .NET Upgrade Assistant a un proyecto heredado representativo.
  • Refactorizar un servicio Web Forms o WCF en APIs de ASP.NET Core.
  • Implementar DI, registro y manejo centralizado de errores en la solución migrada.
  • Agregar autenticación y autorización a la nueva superficie de API.
  • Verificar la coexistencia mediante pruebas de integración de extremo a extremo.
  • Revisión, preguntas y respuestas (Q&A) y orientación para la planificación de modernización posterior a la capacitación.

Requerimientos

  • Experiencia con programación C# y principios de diseño orientado a objetos.
  • Familiaridad con conceptos de desarrollo web (HTTP, HTML, CSS, nociones básicas de JavaScript).
  • Comprensión básica de bases de datos relacionales y SQL.
  • Tener experiencia previa con .NET Framework o ASP.NET es útil pero no obligatorio.

Audiencia

  • Desarrolladores y arquitectos .NET que se preparan para modernizar aplicaciones heredadas de .NET Framework.
  • Ingenieros de software que ingresan a roles de desarrollo empresarial en .NET.
  • Líderes técnicos responsables de la planificación de migración de plataformas y coexistencia.
  • Personal de DevOps e infraestructura que apoya los ciclos de vida de aplicaciones .NET.
 21 Horas

Número de participantes


Precio por participante

Testimonios (2)

Próximos cursos

Categorías Relacionadas