Autor: Jose María Flores Zazo

Test de Contratos y Componentes en .NET: Más allá de la pirámide de testing

¿Y si te dijera que un error mío distribuyó cientos de CDs defectuosos y casi me cuesta el trabajo?
Ese día no solo aprendí lo que es el caos… también entendí por qué las pruebas de software bien diseñadas salvan carreras.
De esa experiencia —entre lágrimas, bugs y monolitos de VB6— nace este libro:
«Test de Contratos y componentes en .Net: Más allá de la pirámide de testing», donde comparto cómo evitar esos errores, cómo estructurar pruebas útiles de verdad, y por qué los contract tests son tu mejor seguro de vida en microservicios.
Disponible gratis, en español, con ejemplos reales, código, herramientas y estrategia.

Leer más

Uso de AddDbContextPool y Buenas Prácticas con DbContext en Azure SQL y On-Premises

En aplicaciones EF Core, cada instancia de DbContext establece internamente conexiones y servicios que conllevan cierta sobrecarga. Aunque crear y eliminar un DbContext es relativamente ligero (no implica operar con la base de datos por sí solo), en escenarios de alta concurrencia la repetición continua de esa inicialización puede notarse en rendimiento. Además, las bases de datos (especialmente en la nube) imponen límites de sesiones/ conexiones. Optimizar el ciclo de vida del DbContext y la gestión de conexiones es clave para evitar errores de límite (por ejemplo “session limit reached”) y asegurar que la aplicación escala bien tanto en Azure SQL como en entornos on-premises.

Leer más

Serialización polimórfica en C#: ¿merece la pena usar las nuevas capacidades de .NET?

En el desarrollo con .NET, es habitual que confiemos en patrones que dominamos: clases base, convertidores personalizados y control total sobre el flujo de serialización. Durante años, si querías serializar jerarquías de clases en JSON preservando el tipo real, la solución era clara: implementar un JsonConverter y aplicar el patrón estrategia.

Pero con la llegada de .NET 7 y su consolidación en .NET 8, System.Text.Json ha dado un paso adelante con soporte nativo para serialización polimórfica gracias a PolymorphismOptions y los atributos [JsonPolymorphic] y [JsonDerivedType]. Veamos como.

Leer más