Programación Tolerante a Errores
En este curso aprenderás a crear aplicaciones las cuales puedan resolver problemas que pueden ocurrir ya estando en ejecución, esto hará que tu software que programes tenga mayor calidad. En este curso utilizamos .NET.
Puedes adquirir el curso comprándolo con un solo pago sin límite de tiempo en el botón de aquí abajo, o puedes Suscribirte a Metal Code y acceder a todos los cursos por una cuota temporal.
8.00 USD
11.00 horas
96 clases
Lo que aprenderás
- Lenguaje C#
- Entorno .NET
- Patrones de Resiliencia
- Manejo de Excepciones a profundidad
- Creación de APIs
- Programación Orientada a Objetos
- Programación Funcional
- Patrones de Manejo de Errores
- Sanitización de información
- Arquitectura de Software
- Uso de Capas y componentes
- Herramientas para validar información
Clases del curso
Bienvenida
Bienvenida al curso
Programación Estructurada en C# (Introducción a C#)
¿Qué son los paradigmas de programación?
Paradigma estructurado
Creación de un proyecto en .NET
Variables
Arrays
Sentencias condicionales
Sentencias de iteración
Funciones
Ejemplo de programa con paradigma estructurado
Programación Orientada a Objetos (Introducción a C#)
Paradigma Orientado a Objetos
Clases y Objetos
Método Constructor
Campos y propiedades
Espacio de nombres (Namespace)
Herencia
Encapsulamiento
Sobrecarga
Sobreescritura
Clases abstractas
Polimorfismo con clases abstractas
Interfaces
Generics
Static
Programación Funcional (Introducción a C#)
Paradigma funcional
Función pura
Funciones de primera clase
Tipo Action
Expresiones Lambda
Tipo Func
Función de orden superior
Tipo Predicate
Introducción a Programación Tolerante a Errores
¿Qué es la programación tolerante a errores?
Diferencia entre Error, Defecto y Falla
Creación de Solución
Excepciones
Introducción a Excepciones
Clasificación de Excepciones
Control de flujo con Excepciones
Lanzando Excepciones con throw
Creación de Excepciones personalizadas
Rendimiento y Coste de las Excepciones
Creando Componentes a Prueba de Fallos
Poniendo a Prueba el Manejo de Errores en un Proyecto API
Middleware para captura de Excepciones
Validaciones
Validación sintáctica vs validación semántica
Manejo de referencias Null
Expresiones Regulares para validar información
Data Annotations para validar información
FluentValidation para validar información
Result Pattern
Explicación de Result Pattern
Result Pattern para manejo de validaciones de negocio
Result Pattern en múltiples procesos y resultados
Result Pattern sin carga para combinar resultados
Notification Pattern
Explicación de Notification Pattern
Notification Pattern en procesos múltiples
Procesamiento de archivos de texto con Notification Pattern
Sanitización de Entradas
¿Qué es Sanitización de entrada de información?
Quitar espacios dobles en cadenas
Normalización de Datos
Eliminando caracteres no deseados con Expresiones Regulares
Uso de la negación en Expresiones Regulares para limpiar entradas
Sanitizando contenido HTML
Logging Estructurado y Observabilidad
Explicación de la sección
Introducción a logging
Niveles de Registro de Logs
Establecer nivel mínimo de registro de Logs
Agregar tiempo al registro de Logs
Uso de Logs en proyecto API de .NET
Primeros Pasos con la biblioteca Serilog en .NET
Formato de los Logs hechos con Serilog
Ejercicio de Logging
Patrones de Resiliencia
¿Qué son los Patrones de Resiliencia?
Patrón de Resiliencia Retry
Introducción al patrón de resiliencia Retry
Implementación de Retry Asíncrono
Uso de biblioteca Polly para usar patrón de resiliencia Retry
Uso de Context en las políticas de Polly
Variantes de espera en Retry
Modalidad de reintento infinito (Retry Forever)
Uso de Retry con Polly en proyecto API en .NET
Forma Simplificada de Retry en registro de Cliente HTTP
Patrón de Resiliencia Circuit Breaker
¿Qué es el patrón de resiliencia Circuit Breaker?
Explicación con código de Circuit Breaker
Circuit Breaker en escenario de restablecimiento (Closed)
Circuit Breaker en API
Circuit Breaker Avanzado
Patrón de Resiliencia Timeout
Introducción al Patrón de Resiliencia Timeout
Estrategia Pesimista en patrón Timeout
Estrategia Optimista en patrón Timeout
Comprobando la finalización de los procesos en modo Optimista
Cancelación Manual en el patrón Timeout
Patrón Timeout en proyecto de API en .NET
Patrón de Resiliencia Fallback
Introducción al Patrón de Resiliencia Fallback
Patrón Fallback con datos de respaldo
Combinación de Patrones de Resiliencia
Uso de patrón Fallback en Windows Forms
Conclusión y Código Fuente
Conclusión y Código Fuente
Planes de Metal Code
Mensual
$10 USD
Es la membresía más económica y que las personas eligen más
- ✔ Acceso a Todos los cursos
- ✔ Acceso al código del curso (si es que aplica)
- ✔ Acceso a cursos en Pre-venta
- ✔ Acceso a cursos exclusivos
- ✔ Certificado de finalización
Trimestral
$25 USD
Si deseas terminar más de 3 cursos, esta es la membresía ideal
- ✔ Acceso a Todos los cursos
- ✔ Acceso al código del curso (si es que aplica)
- ✔ Acceso a cursos en Pre-venta
- ✔ Acceso a cursos exclusivos
- ✔ Certificado de finalización
Semestral
$40 USD
Membresía para las personas que deseen ver más de 5 o 6 cursos
- ✔ Acceso a Todos los cursos
- ✔ Acceso al código del curso (si es que aplica)
- ✔ Acceso a cursos en Pre-venta
- ✔ Acceso a cursos exclusivos
- ✔ Certificado de finalización
Anual
$60 USD
Si deseas ver todos los cursos de Metal Code, esta membresía es la ideal
- ✔ Acceso a Todos los cursos
- ✔ Acceso al código del curso (si es que aplica)
- ✔ Acceso a cursos en Pre-venta
- ✔ Acceso a cursos exclusivos
- ✔ Certificado de finalización