Empieza aquí
¿Nuevo por aquí? Estos son los posts que recomendaría primero a una persona desarrolladora. Son más largos, más perennes o más didácticos que los posts diarios de noticias. Se actualiza cuando escribo algo que recomendaría de verdad.
14 posts · agrupados por tema
Lenguaje C#
Qué cambió realmente en el lenguaje y cómo aterriza en código real.
- Miembros de extensión en C# 14: propiedades, operadores y miembros estáticos de extensión C# 14 introduce miembros de extensión, lo que te permite agregar propiedades, operadores y miembros estáticos de extensión a tipos existentes usando la nueva palabra clave extension.
- Asignación condicional nula en C# 14: usar ?. y ?[] en el lado izquierdo C# 14 extiende los operadores condicionales nulos para que funcionen en el lado izquierdo de las asignaciones, eliminando verificaciones de null verbosas al asignar propiedades o indexadores.
- Los tipos de unión de C# 15 están aquí: las uniones de tipo llegan en .NET 11 Preview 2 C# 15 introduce la palabra clave union para uniones de tipo con coincidencia de patrones exhaustiva y conversiones implícitas. Disponible ahora en .NET 11 Preview 2.
EF Core
Características clave de acceso a datos que he investigado en EF Core 10 y 11.
- EF Core 11 agrega búsqueda vectorial nativa de SQL Server con índices DiskANN EF Core 11 Preview 2 soporta VECTOR_SEARCH() de SQL Server 2025 y los índices vectoriales DiskANN directamente desde LINQ. Aquí está cómo configurar el índice, ejecutar consultas aproximadas, y qué cambia del enfoque VectorDistance de EF Core 10.
- EF Core 11 poda joins de referencia innecesarios en split queries EF Core 11 Preview 3 remueve joins to-one redundantes de split queries y tira claves ORDER BY innecesarias. Un escenario reportado se volvió 29% más rápido, otro 22%. Así se ve el SQL ahora.
- EF Core 11 prende transactional batches de Cosmos DB por default EF Core 11 agrupa writes de Cosmos DB en transactional batches por container y partition en cada SaveChanges, dando atomicidad best-effort y menos roundtrips sin cambios de código.
Rendimiento y profiling
Posts que muestran las piezas en movimiento, no solo los feature flags.
- Rendimiento en .NET 10: SearchValues Usa SearchValues en .NET 10 para búsqueda multi-cadena de alto rendimiento. Reemplaza bucles foreach con coincidencias aceleradas por SIMD usando los algoritmos Aho-Corasick y Teddy.
- Perfetto + dotnet-trace: un ciclo práctico de profiling para .NET 9/.NET 10 Un ciclo práctico de profiling para .NET 9 y .NET 10: captura trazas con dotnet-trace, visualízalas en Perfetto e itera sobre problemas de CPU, GC e hilos del thread pool.
- Construyendo un motor de base de datos de latencia de microsegundos en C# El proyecto Typhon de Loic Baumann apunta a commits ACID de 1-2 microsegundos usando ref structs, intrínsecos de hardware y memoria fijada, demostrando que C# puede competir a nivel de programación de sistemas.
Runtime de .NET y tooling
Cosas que cambian cómo se siente el día a día con .NET.
- Runtime Async de .NET 11 reemplaza las state machines con trazas de pila más limpias Runtime Async en .NET 11 mueve el manejo de async/await de las state machines generadas por el compilador al runtime mismo, produciendo trazas de pila legibles, breakpoints correctos, y menos asignaciones en heap.
- ASP.NET Core 11 incluye trazado OpenTelemetry nativo: deja el paquete NuGet adicional ASP.NET Core en .NET 11 Preview 2 agrega atributos semánticos de OpenTelemetry directamente a la actividad del servidor HTTP, eliminando la necesidad de OpenTelemetry.Instrumentation.AspNetCore.
MAUI y Flutter
Posts del lado móvil con suficiente detalle para ser accionables.
- .NET MAUI 11 incluye un LongPressGestureRecognizer integrado .NET MAUI 11 Preview 3 agrega LongPressGestureRecognizer como gesto de primera clase, con duration, umbral de movimiento, eventos de state, y binding de command, reemplazando el behavior común del Community Toolkit.
- Pin clustering aterriza en .NET MAUI 11 Maps .NET MAUI 11 Preview 3 agrega pin clustering integrado al control Map en Android e iOS, con grupos ClusteringIdentifier y un evento ClusterClicked.
- Flutter Text: el detalle de `leadingDistribution` que cambia cómo "respira" tu UI La propiedad leadingDistribution dentro de TextHeightBehavior en Flutter controla cómo se reparte el leading extra por encima y por debajo de los glifos. Aquí está cuándo importa y cómo arreglar texto que se ve desalineado vertical.