All Coder Things
Artículos, referencias y series de proyectos prácticos sobre desarrollo de software.
Guías
Artículos Destacados
Gestión de memoria y Garbage Collector en C#
Aprende gestión de memoria y garbage collector en C# para comprender el ciclo de vida de objetos y la limpieza de memoria.
Flujos asíncronos en C# (IAsyncEnumerable)
Aprende flujos asíncronos en C# con IAsyncEnumerable para procesar datos paso a paso con ejemplos prácticos.
Operaciones booleanas en C#
Aprende las operaciones booleanas en C#, incluyendo el tipo bool, comparaciones y operadores lógicos como &&, || y ! con ejemplos.
Introducción a Entity Framework Core en C#
Aprende los fundamentos de Entity Framework Core en C#, incluyendo DbContext y operaciones básicas con bases de datos.
Biblioteca Math en C#
Aprende a usar la biblioteca Math en C#, incluyendo Pow, Sqrt, Round, Abs y otros métodos matemáticos con ejemplos prácticos.
Operadores y expresiones en C#
Operadores y expresiones en C#: uso de operadores aritméticos, de comparación, lógicos, de incremento/decremento, ternario y null-coalescing.
Biblioteca TPL y programación paralela en C#
Aprende Task Parallel Library y programación paralela en C# con Task, Parallel y ejemplos prácticos.
Operaciones con cadenas en C#
Apprenez à manipuler les chaînes de caractères en C#, y compris la concaténation, la recherche, substring, IndexOf et plus encore.
Fundamentos de programación asíncrona en C# (async/await)
Aprende async y await en C# para crear aplicaciones fluidas con tareas asíncronas y ejemplos prácticos.
Conversiones de tipos en C#
Aprende las conversiones de tipos en C#, incluyendo casting implícito y explícito, Parse, TryParse y métodos Convert con ejemplos.
Tipos de datos básicos en C#
Tipos de datos básicos en C#: numéricos, de texto, lógicos, orientados a objetos y anulables.
Manejo de excepciones en C# (try, catch, finally)
Aprende a manejar excepciones en C# usando bloques try, catch y finally para gestionar errores de forma segura con ejemplos.
Comandos de consola en C#
Aprende a trabajar con aplicaciones de consola en C#, mostrando mensajes, leyendo entradas del usuario y formateando la salida.
Genéricos en C# (List, Dictionary)
Aprende genéricos en C# (List
Estructuras condicionales en C# (if, else, switch)
Estructuras de decisión en C#: aprende a usar if, else if, else y switch para ejecutar acciones diferentes según las condiciones.
Fundamentos de Inyección de Dependencias en C#
Aprende los fundamentos de Inyección de Dependencias en C#, gestionando dependencias y logrando bajo acoplamiento.
Fundamentos de LINQ en C# (Where, Select, OrderBy)
Aprende fundamentos de LINQ en C# con Where, Select y OrderBy para consultar, filtrar y ordenar colecciones con ejemplos.
Métodos y uso de parámetros en C#
Aprende a definir métodos y usar parámetros en C#, incluyendo parámetros por valor y referencia, parámetros opcionales y ejemplos.
Operaciones con DateTime y TimeSpan en C#
Aprende a usar DateTime y TimeSpan en C# para realizar operaciones de fecha y hora como comparación, cálculo y formateo.
Uso de constantes y enumeraciones en C#
Aprende a usar constantes y enumeraciones en C# para escribir código más limpio, seguro y fácil de mantener con ejemplos prácticos.
Clases, Objetos, Propiedades y Métodos en C#
Aprende cómo las clases, objetos, propiedades y métodos en C# forman la base de la programación orientada a objetos.
Reflexión y enlace tardío en C#
Aprende Reflection y late binding en C# para inspeccionar tipos en tiempo de ejecución y crear aplicaciones dinámicas.
Gestión de procesos y subprocesos en C#
Aprende gestión de procesos y subprocesos en C# para controlar la ejecución y los recursos del sistema.
El concepto de los generadores de código en C# (C# 9+)
Aprende generadores de código en C# para generar código en tiempo de compilación y mejorar el rendimiento.
Principios SOLID en C#
Aplicación de los principios SOLID en C# con ejemplos: código más flexible, mantenible y comprobable.
Últimos ejemplos
Errores de validación en ASP.NET Core: normalizar ModelState a { field, message }[]
Normaliza los errores de ModelState con InvalidModelStateResponseFactory al formato { field, message }[] para que el cliente muestre validaciones de forma consistente.
Crear un ZIP de una carpeta con progreso en .NET (ejemplo WPF)
Genera un ZIP desde una carpeta en .NET y actualiza una ProgressBar en WPF usando ZipArchive e IProgress para una UI fluida.
Formato estándar de respuesta API en ASP.NET Core (Result)
Estandariza las respuestas de éxito y error en ASP.NET Core con un wrapper Result
Rate Limiting por IP en ASP.NET Core (.NET 8): 429 Too Many Requests
Limita solicitudes por IP con el rate limiting integrado de .NET 8 y devuelve 429 con Retry-After para proteger tu API del abuso.
ProblemDetails en ASP.NET Core: errores limpios con TraceId
Mapea excepciones a ProblemDetails (RFC 7807) y devuelve un traceId para errores consistentes y para localizar la petición exacta en los logs.
Paginación limpia en ASP.NET Core Web API (Headers + Link)
Devuelve solo los items en el body y mueve los metadatos de paginación a headers. Añade el Link header RFC 5988 (next/prev) para navegar.
Ejemplos destacados
ProblemDetails en ASP.NET Core: errores limpios con TraceId
Mapea excepciones a ProblemDetails (RFC 7807) y devuelve un traceId para errores consistentes y para localizar la petición exacta en los logs.
Errores de validación en ASP.NET Core: normalizar ModelState a { field, message }[]
Normaliza los errores de ModelState con InvalidModelStateResponseFactory al formato { field, message }[] para que el cliente muestre validaciones de forma consistente.
Rate Limiting por IP en ASP.NET Core (.NET 8): 429 Too Many Requests
Limita solicitudes por IP con el rate limiting integrado de .NET 8 y devuelve 429 con Retry-After para proteger tu API del abuso.