All Coder Things
Artículos, referencias y series de proyectos prácticos sobre desarrollo de software.
Guías
Artículos Destacados
Comandos de consola en C#
Aprende a trabajar con aplicaciones de consola en C#, mostrando mensajes, leyendo entradas del usuario y formateando la salida.
Técnicas de depuración en C#
Aprende técnicas de depuración en C# con breakpoints y herramientas de análisis para detectar y corregir errores.
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.
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.
Estructuras condicionales en C++: if, else if, switch
Aprende estructuras condicionales en C++ con if, else if y switch para controlar decisiones y flujo del programa.
Tipos Record y Objetos Inmutables en C#
Aprende record types y objetos inmutables en C#, incluyendo igualdad por valor, expresiones with y 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.
LINQ Avanzado en C# (GroupBy, Join, Aggregate)
Aprende LINQ avanzado en C# con GroupBy, Join y Aggregate para realizar consultas complejas de datos.
Bucles en C++: for, while, do-while
Aprende bucles en C++ con for, while y do-while para repetir tareas y controlar el flujo del programa.
Configurar compilador e IDE de C++ (Visual Studio, GCC, Clang)
Aprende a configurar un entorno de desarrollo C++ con Visual Studio, GCC y Clang paso a paso.
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.
Escribir pruebas unitarias en C# (xUnit, NUnit, MSTest)
Aprende a escribir pruebas unitarias en C# con xUnit, NUnit y MSTest para crear aplicaciones más confiables.
Namespaces y ensamblados en C#
Aprende los conceptos de namespaces y ensamblados en C# para organizar el código y gestionar dependencias correctamente.
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.
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.
Uso de FluentValidation en C#
Aprende FluentValidation en C# para definir reglas de validación claras y mantenibles.
Estructura de sintaxis de C#
Aprende los fundamentos de la sintaxis de C#, incluyendo bloques de código, comentarios y reglas de nombrado de variables.
Arreglos multidimensionales y punteros en C++
Aprende arreglos multidimensionales y punteros en C++, incluyendo organización de memoria, indexación y ejemplos prácticos.
Código no seguro y punteros en C#
Aprende código no seguro y punteros en C# para trabajar con direcciones de memoria y operaciones de bajo nivel.
Encapsulación, Herencia y Polimorfismo en C#
Aprende encapsulación, herencia y polimorfismo en C# con ejemplos claros para dominar los principios básicos de la POO.
Operaciones booleanas en C#
Aprende las operaciones booleanas en C#, incluyendo el tipo bool, comparaciones y operadores lógicos como &&, || y ! con ejemplos.
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.
Primer proyecto en C#
Primera aplicación de consola en C# con Visual Studio 2022: uso de WriteLine, ReadKey y ReadLine.
Arquitectura en capas y Clean Architecture en C#
Aprende arquitectura en capas y Clean Architecture en C# para crear aplicaciones mantenibles y bien estructuradas.
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.
Últimos ejemplos
Escritura atómica de archivos en .NET: evitar archivos incompletos
Escribe primero en un archivo temporal, vacía los buffers y después reemplázalo o muévelo para evitar archivos parciales o dañados.
Idempotency Key en ASP.NET Core (.NET 8): evitar POST duplicados
Haz que POST sea seguro ante reintentos: usa Idempotency-Key, guarda la primera respuesta y reprodúcela en duplicados para evitar inserciones dobles.
Ordenar y filtrar de forma segura en ASP.NET Core: Query Builder con whitelist
Analiza ?sort=name,-createdAt&filter=country:TR,status:active de forma segura usando whitelist y mapeo a expresiones/columnas SQL, evitando inyección por campos dinámicos.
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
Ejemplos destacados
Idempotency Key en ASP.NET Core (.NET 8): evitar POST duplicados
Haz que POST sea seguro ante reintentos: usa Idempotency-Key, guarda la primera respuesta y reprodúcela en duplicados para evitar inserciones dobles.
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.
Escritura atómica de archivos en .NET: evitar archivos incompletos
Escribe primero en un archivo temporal, vacía los buffers y después reemplázalo o muévelo para evitar archivos parciales o dañados.
Ordenar y filtrar de forma segura en ASP.NET Core: Query Builder con whitelist
Analiza ?sort=name,-createdAt&filter=country:TR,status:active de forma segura usando whitelist y mapeo a expresiones/columnas SQL, evitando inyección por campos dinámicos.
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.
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.
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.
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.