¡Estamos entusiasmados de anunciar el lanzamiento de la segunda vista previa de .NET 11! Esta versión trae consigo una oleada de mejoras significativas que abarcan desde el tiempo de ejecución de .NET hasta el SDK, las bibliotecas, ASP.NET Core, Blazor, .NET MAUI, F#, Entity Framework Core, las imágenes de contenedores y mucho más. Es una actualización repleta de novedades que prometen optimizar el desarrollo y potenciar la eficiencia de vuestras aplicaciones. Os invitamos a descargarla y explorar todas las capacidades que ofrece.
📚 Novedades en las Bibliotecas
Las bibliotecas fundamentales de .NET reciben importantes optimizaciones:
- GetTypeInfo Genérico para System.Text.Json: Esta mejora simplifica y agiliza la serialización y deserialización de objetos en
System.Text.Json, especialmente al trabajar con tipos genéricos complejos. Permite una reflexión de tipos más eficiente y una mayor flexibilidad en la manipulación de datos JSON, lo que se traduce en un código más limpio y un rendimiento superior en operaciones de E/S. - Selección de formato de archivo Tar: Ahora tenéis un control más granular sobre el formato de los archivos Tar. Esta característica es crucial para la interoperabilidad y la compatibilidad, permitiendo a los desarrolladores especificar el formato exacto del archivo Tar según sus necesidades, lo que facilita la integración con diferentes sistemas y herramientas de archivado.
- Matrix4x4.GetDeterminant ~15% más rápido: Para aquellos que trabajan en gráficos 3D, simulaciones científicas o cualquier aplicación que requiera álgebra lineal, esta mejora de rendimiento en el cálculo del determinante de matrices 4×4 es una excelente noticia. Un aumento del 15% en la velocidad puede tener un impacto considerable en aplicaciones de alto rendimiento, como motores de juegos y software de CAD.
⏱ Mejoras en el Tiempo de Ejecución (Runtime)
El corazón de .NET se vuelve aún más robusto y rápido:
- Runtime Async (V2): Esta segunda iteración de las mejoras asíncronas busca refinar aún más el modelo de programación asíncrona, haciéndolo más eficiente y fácil de depurar. Esto significa mejor capacidad de respuesta en las aplicaciones, menor consumo de recursos y una experiencia de desarrollo más fluida al trabajar con operaciones I/O intensivas o tareas de larga duración.
- Mejoras en JIT: El compilador Just-In-Time (JIT) continúa evolucionando. Estas mejoras se centran en optimizar la generación de código, reducir los tiempos de inicio de las aplicaciones y mejorar el rendimiento general del código ejecutado. Un JIT más inteligente significa que vuestras aplicaciones se ejecutan más rápido y consumen menos memoria.
- Despacho de interfaz en caché y otras mejoras de VM: La máquina virtual (VM) de .NET se beneficia de técnicas avanzadas como el despacho de interfaz en caché, lo que acelera las llamadas a métodos en interfaces. Junto con otras optimizaciones internas, estas mejoras contribuyen a una ejecución de código más rápida y eficiente, especialmente en escenarios de polimorfismo intensivo.
🛠 Avances en el SDK
El kit de desarrollo de software (SDK) de .NET se hace más ligero y potente:
- Instaladores del SDK más pequeños en Linux y macOS: Una reducción de hasta el 17% en el tamaño de los instaladores del SDK para Linux y macOS es una ventaja significativa. Esto no solo acelera las descargas y las instalaciones, sino que también es crucial para entornos de integración continua/despliegue continuo (CI/CD), donde el tamaño de las imágenes y la velocidad de aprovisionamiento son críticos.
- Mejoras en los analizadores de código: Las herramientas de análisis de código integradas en el SDK se han perfeccionado para ofrecer una detección más precisa de errores, sugerencias de refactorización más inteligentes y un mejor cumplimiento de las mejores prácticas. Esto ayuda a los desarrolladores a escribir código de mayor calidad, más mantenible y con menos defectos.
- Nuevas advertencias del SDK y objetivos de compilación: La introducción de nuevas advertencias y objetivos de compilación proporciona a los desarrolladores información más detallada durante el proceso de compilación, permitiendo identificar y solucionar problemas potenciales antes de que se conviertan en errores en tiempo de ejecución. Esto conduce a un proceso de desarrollo más robusto y menos propenso a errores.
F#
El lenguaje de programación funcional F# recibe mejoras que aumentan su expresividad y rendimiento:
- Jerarquías de interfaz DIM simplificadas: Facilita la interoperabilidad con C# y otros lenguajes de .NET, haciendo que el trabajo con implementaciones de interfaz predeterminadas (DIM) sea más intuitivo y menos propenso a errores.
- Caché de resolución de sobrecargas: Esta optimización interna mejora el rendimiento del compilador de F#, especialmente en proyectos grandes con muchas sobrecargas de funciones, lo que se traduce en tiempos de compilación más rápidos.
- Directiva de preprocesador #elif: Aporta una mayor flexibilidad al control de flujo de la compilación condicional en F#, permitiendo estructuras más complejas y legibles en el código que debe adaptarse a diferentes entornos o plataformas.
partitionWithpara colecciones: Una nueva función utilitaria que enriquece la manipulación de colecciones en F#, facilitando la división de colecciones en subcolecciones basadas en predicados. Esto es un añadido valioso para la programación funcional, promoviendo un código más conciso y expresivo.
(Nota: C# y Visual Basic no incluyen nuevas características destacables o cambios importantes en esta vista previa, enfocándose en la estabilidad y el refinamiento de la plataforma.)
🌐 ASP.NET Core & Blazor
La plataforma para el desarrollo web y de interfaz de usuario obtiene importantes actualizaciones:
- Rastreo nativo de OpenTelemetry para ASP.NET Core: Una integración más profunda con OpenTelemetry permite una observabilidad de primera clase para aplicaciones ASP.NET Core. Esto facilita la recopilación de métricas, trazas y registros distribuidos, esencial para monitorear y depurar sistemas complejos en entornos de producción.
- Soporte para TempData en Blazor: Los desarrolladores de Blazor ahora pueden utilizar
TempDatapara mantener los datos entre las solicitudes, una característica común en aplicaciones web que ayuda a gestionar el estado transitorio, por ejemplo, para mostrar mensajes de éxito o error después de una redirección. - Soporte para OpenAPI 3.2.0: La última especificación de OpenAPI se integra, mejorando la documentación y la descripción de las APIs web. Esto facilita la generación de clientes y la exploración de APIs, estandarizando la forma en que las aplicaciones interactúan con los servicios.
- Plantilla de proyecto .NET Web Worker: Se introduce una nueva plantilla que simplifica la creación de Web Workers en el ecosistema .NET. Esto permite realizar tareas computacionalmente intensivas en hilos separados del hilo principal de la UI, mejorando la capacidad de respuesta y la experiencia del usuario en aplicaciones web.
- Mejoras de rendimiento: Se han implementado optimizaciones generales en todo el stack de ASP.NET Core y Blazor, lo que resulta en aplicaciones web más rápidas, más eficientes y con una menor latencia.
📱 .NET MAUI y .NET para Android
El desarrollo de aplicaciones multiplataforma con .NET MAUI y para Android se fortalece:
- Mejoras en el control de Mapas: El control de mapas recibe actualizaciones que mejoran su funcionalidad y personalización, permitiendo a los desarrolladores integrar mapas más ricos y dinámicos en sus aplicaciones multiplataforma.
- Mejoras de rendimiento de TypedBinding: Las expresiones de enlace de datos (TypedBinding) se han optimizado para un mejor rendimiento, lo que se traduce en interfaces de usuario más fluidas y reactivas en aplicaciones .NET MAUI.
- Anotaciones de inmutabilidad para Color y Font: La introducción de anotaciones de inmutabilidad para los tipos
ColoryFontmejora la seguridad y la predictibilidad del estado de la UI, facilitando el razonamiento sobre el flujo de datos en las aplicaciones. - Consistencia de la API de VisualStateManager: Se han realizado ajustes para que la API de VisualStateManager sea más consistente y fácil de usar, lo que simplifica la gestión de estados visuales complejos en la UI de .NET MAUI.
.NET para Android
- Correcciones y mejoras en
dotnet run: La experiencia de desarrollo en Android se optimiza con correcciones y mejoras en el comandodotnet run, haciendo que el proceso de prueba y ejecución sea más fiable y eficiente. - Uso de archivos de respuesta al llamar a
r8.jar: Se mejora la gestión de la herramienta R8, que se utiliza para la reducción, ofuscación y optimización de código en Android, permitiendo un procesamiento más eficiente en proyectos grandes. - CoreCLR ahora requiere API 24 o superior: Para .NET en Android, CoreCLR ahora exige la API 24 (Android 7.0 Nougat) o superior, lo que permite aprovechar las características más modernas de la plataforma Android y garantiza una base más actualizada para el desarrollo.
Además, se incluye soporte experimental de CoreCLR para .NET para iOS, Mac Catalyst, macOS y tvOS, ampliando el alcance de .NET a estas plataformas.
🖥 Mejoras en WPF y Windows Forms
Aunque no hay nuevas características destacables en Windows Forms, WPF se enfoca en la estabilidad:
- Windows Presentation Foundation (WPF): Esta versión se centra en mejoras de calidad críticas, incluyendo una corrección importante para proteger contra fallos del Administrador de Ventanas de Escritorio (DWM). Esto garantiza una mayor estabilidad y fiabilidad en las aplicaciones de escritorio WPF.
🎁 Entity Framework Core
Entity Framework Core, el popular ORM para .NET, potencia la interacción con bases de datos:
- Soporte para LINQ
MaxByyMinBy: Ahora es más sencillo realizar consultas que recuperen el elemento máximo o mínimo de una secuencia basándose en una clave, directamente a través de LINQ y traduciéndose eficientemente a SQL. - Soporte para índices vectoriales SQL Server DiskANN y
VECTOR_SEARCH(): Una adición de vanguardia para aplicaciones de inteligencia artificial y aprendizaje automático. Permite realizar búsquedas de similitud vectorial directamente en SQL Server, abriendo nuevas posibilidades para bases de datos de vectores. - Soporte para la creación de catálogos e índices de texto completo de SQL Server: Facilita la implementación de capacidades avanzadas de búsqueda de texto completo en bases de datos SQL Server, mejorando las funcionalidades de búsqueda en aplicaciones empresariales.
- Soporte para SQL Server
JSON_CONTAINS(): Mejora la capacidad de consultar y manipular datos JSON almacenados en SQL Server, permitiendo verificar si un documento JSON contiene un valor específico o si un subconjunto de JSON existe dentro de otro.
📦 Imágenes de Contenedores
La eficiencia en el despliegue con contenedores es una prioridad:
- Las imágenes de contenedores del SDK son hasta un 17% más pequeñas: La reducción del tamaño de las imágenes del SDK para contenedores es un paso significativo hacia una mayor eficiencia. Esto se traduce en descargas más rápidas, un menor consumo de espacio en disco y tiempos de despliegue acelerados en entornos basados en contenedores, lo cual es vital para la agilidad de DevOps.
🚀 ¡Empieza hoy mismo!
Para explorar todas estas mejoras, os animamos a descargar e instalar el SDK de .NET 11 Preview 2.
Si trabajáis en Windows, os recomendamos utilizar la última versión de Visual Studio 2026 Insiders para obtener la mejor experiencia. Alternativamente, Visual Studio Code con la extensión C# Dev Kit también es una excelente opción para empezar con .NET 11.
Esta vista previa representa un paso adelante en la evolución de .NET, trayendo consigo herramientas más potentes y eficientes para desarrolladores de todas las plataformas. ¡No esperéis más para probarlas!