Recibo con entusiasmo el lanzamiento de .NET 9, marcando el comienzo de un nuevo ciclo anual después del exitoso despliegue de .NET 8 hace algunos meses. Se nos alienta a realizar la transición de nuestras aplicaciones a .NET 8. En esta publicación, comparto mi visión inicial de .NET 9, programada para su presentación durante .NET Conf 2024 al final del año. Las áreas prioritarias de enfoque abarcan el desarrollo de aplicaciones inteligentes y nativas de la nube. Se esperan inversiones sustanciales en rendimiento, productividad y seguridad, acompañadas de avances en toda la plataforma. En el día de hoy, explicaremos las áreas clave de enfoque de .NET 9 y las integraciones adicionales que planeamos proporcionar en colaboración con los equipos de socios de Microsoft.
El objetivo es mejorar la eficiencia en el desarrollo de .NET a través de Visual Studio y Visual Studio Code, utilizando el kit de desarrollo de C#, y simplificar las implementaciones en la nube con los servicios de Azure. Se continuará colaborando estrechamente con socios de la industria como Canonical y Red Hat, asegurando un rendimiento óptimo de .NET en todos los entornos. La llegada de .NET 9 representa un paso significativo para la plataforma. En este día, se anuncia el lanzamiento de .NET 9 Preview 1 y se aprecian comentarios sobre todas las nuevas características introducidas.
Plataforma para desarrolladores nativos de la nube
A lo largo de los últimos años, el equipo ha centrado sus esfuerzos en consolidar bases sólidas para entornos nativos de la nube, poniendo especial énfasis en aspectos críticos como el rendimiento en tiempo de ejecución y la supervisión de aplicaciones. Esta dedicación persistirá, con un enfoque adicional en facilitar rutas claras hacia la infraestructura y los servicios de producción más demandados, como la ejecución eficiente en Kubernetes y la utilización de bases de datos administradas y servicios de almacenamiento en caché como Redis.
Estas mejoras se implementarán en diversas capas de la pila de tecnologías .NET. Nuestro enfoque se complementa con .NET Aspire, una iniciativa estratégica que reduce significativamente los costos y la complejidad asociados con el desarrollo de aplicaciones en la nube, acortando la brecha entre el desarrollo y la producción.
En el empeño por optimizar aplicaciones de producción, el equipo ha avanzado en el desarrollo de herramientas clave, como la compilación anticipada (AOT) nativa y la reducción de aplicaciones. En el caso de .NET 8, se optimizaron las aplicaciones de API web para AOT y reducción. En el contexto de .NET 9, se busca extender estos beneficios a otros tipos de aplicaciones, al tiempo que se mejora el recolector de basura (GC) de DATAS para todas las aplicaciones ASP.NET Core.
Los colaboradores en Azure Container Apps jugarán un papel fundamental al facilitar la escalabilidad de las aplicaciones .NET 9, permitiendo su implementación sencilla en múltiples instancias dentro de entornos basados en Kubernetes. Colaboramos estrechamente con ellos para asegurar que los datos efímeros, como los tokens antifalsificación y de autenticación, se cifren adecuadamente mediante la protección de datos, y para mejorar las API de limitación de velocidad, asegurando un rendimiento óptimo entre nodos.
La aplicación de ejemplo de la arquitectura de referencia eShop, presentada en .NET Conf el año pasado, experimentará actualizaciones para aprovechar plenamente estas nuevas funcionalidades y opciones de implementación a medida que .NET 9 evolucione a lo largo del año.
Herramientas para desarrolladores nativos de la nube
Los colaboradores en Visual Studio han trazado planes de mejora que respaldaron y ampliarán nuestra plataforma en la nube, la compilación anticipada (AOT) nativa, .NET Aspire y la implementación en Azure.
La compilación de código AOT nativo implica el uso de herramientas que pueden resultar no tan familiares para muchos desarrolladores de .NET. Aquellos que buscan realizar compilaciones cruzadas, como apuntar a Linux desde Windows, actualmente confían en Docker o WSL2, tal como se detalla en nuestra documentación y ejemplos. Estamos ampliando la compatibilidad de Visual Studio con AOT para hacer que la compilación AOT nativa sea más accesible para un conjunto más amplio de desarrolladores.
Visual Studio y Visual Studio Code ofrecerán experiencias nuevas y mejoradas en el desarrollo e implementación de .NET Aspire. Esto abarca desde la configuración detallada de componentes hasta la depuración, que incluirá la recarga en caliente de AppHost y procesos secundarios, junto con una integración completa con el panel de control del desarrollador. Los desarrolladores podrán implementar sus proyectos en Azure Container Apps directamente desde Visual Studio, Visual Studio Code y mediante la interfaz de línea de comandos (CLI) para desarrolladores de Azure (azd).
.NET e Inteligencia Artificial
El entusiasmo ha despertado entre los desarrolladores gracias a la iniciativa de OpenAI, que ofrece la oportunidad de transformar sus aplicaciones mediante IA. Durante el último año, Azure Open AI y .NET se han empleado para desarrollar soluciones de inteligencia artificial, destacando Microsoft Copilot como la opción más popular. Seguiremos colaborando con los clientes que buscan formas de utilizar sus habilidades en C# para crear esta nueva categoría de aplicaciones e invertir rápidamente en nuestra plataforma de IA.
En la versión 8 de .NET, la organización ha ampliado su inversión más allá de ML.NET. Se ha enfocado en las cargas de trabajo de IA, invirtiendo en ejemplos y documentación introductoria. Además, ha colaborado estrechamente con los socios del ecosistema de IA para ofrecer clientes de C# para bases de datos vectoriales como Qdrant y Milvus, así como bibliotecas como Semantic Kernel. Además, se ha incorporado TensorPrimitives para .NET.
De cara a .NET 9, el equipo se compromete a facilitar aún más a los desarrolladores de .NET la integración de la inteligencia artificial en sus aplicaciones nuevas y existentes. Encontrarán excelentes bibliotecas y documentación para trabajar con modelos OpenAI y OSS (alojados y locales). Además, se seguirá colaborando en Semantic Kernel, OpenAI y Azure SDK para garantizar que los desarrolladores de .NET disfruten de una experiencia de primera en la creación de aplicaciones inteligentes.
El ejemplo de ChatGPT + Enterprise Data con Azure OpenAI y Cognitive Search .NET será actualizado a lo largo de la versión en GitHub.
Trabajo pendiente de .NET 9
Estos proyectos nativos de la nube y de IA constituyen solo una porción de lo que planeamos ofrecer. Se han compartido tareas pendientes para .NET MAUI, ASP.NET Core y Blazor, C#, F# y otros elementos de herramientas y tiempo de ejecución incluidos en el SDK de .NET. Revise las tareas pendientes del proyecto de .NET 9 en GitHub para explorar sus áreas y características de productos preferidas.
De manera regular, el equipo introduce nuevas funciones y actualiza el progreso. Se compromete a mantener actualizadas las tareas pendientes y las notas de la versión de .NET 9 a medida que avanza el desarrollo. Además, está trabajando en algunas experiencias que podrían integrarse en una versión futura.
.Net Preview 1
.NET 9 Vista Preliminar 1 ya está disponible para su descarga. En adelante, se liberarán vistas preliminares en las Discusiones de GitHub. El contenido del blog de .NET se adaptará para resaltar las virtudes de .NET 8, con el fin de respaldar su uso en entornos de producción.
Asimismo, se despliega hoy .NET Aspire Vista Preliminar 3, que trae mejoras a la interfaz de usuario del panel y compatibilidad con nuevos componentes como Azure OpenAI y Kafka. Se ha ampliado el soporte para Oracle, MySQL, CosmosDB y Orleans.
Para aquellos que no prefieren las versiones preliminares, se sugiere revisar la publicación de la versión de .NET 8. Se han recibido muchos comentarios positivos sobre las implementaciones iniciales de .NET 8, y se espera que la migración hacia .NET 9 sea sorprendentemente sencilla desde .NET 8 (y versiones anteriores).
Conclusiones
.NET 9 representa un avance significativo en el desarrollo nativo de la nube y la inteligencia artificial. Con el lanzamiento de .NET 9 Preview 1, se invita a la comunidad a explorar y proporcionar retroalimentación sobre las nuevas características. La plataforma se centra en mejorar el rendimiento, la productividad y la seguridad, con especial atención en aplicaciones inteligentes y nativas de la nube. Las colaboraciones con socios como Azure Container Apps y Visual Studio buscan optimizar la escalabilidad y la eficiencia en el desarrollo. Además, .NET 9 promete facilitar la integración de IA en aplicaciones mediante bibliotecas y documentación robustas, destacando la cooperación con OpenAI y Azure SDK. Este lanzamiento preliminar es un paso hacia una transición fluida desde .NET 8, prometiendo una experiencia de desarrollo mejorada y más accesible.