La .NET CONF 2024 acaba de terminar. Descubre las NOVEDADES de .NET 9 junto a los CAMBIOS que trae C# 13.
Puedes ver el contenido de este vídeo junto con su curso en el modo vídeo (similar a Udemy) si pulsas aquí.

Novedades en .NET 9 y el resumen de la .NET Conf 2024

15 Nov 2024 10 min (0) Comentarios

Bienvenidos como cada año a un nuevo Post sobre la conferencia más importante dentro del mundo de dotnet, la dotnet conf. 

Aquí vamos a ver un resumen de lo que nos han deparado los tres días de conferencias. 

 

 

0 - Introducción a .NET 9

 

.NET no es únicamente un lenguaje de programación o un framework, sino que .NET es una plataforma que nos permite trabajar en todos los ámbitos que podamos imaginar. 

Desde web a juegos, pasando por aplicaciones móviles, IoT, desktop, y ahora, aún más, con IA. 

 

Para ello .NET nos da una serie de herramientas y ecosistema que nos facilita el trabajo, en esta conferencia es donde se ven las mejoras año a año sobre dichas herramientas. 

 

beneficios .net 9

 

El ecosistema de .NET en mi opinión es el mejor para trabajar, por todo el trabajo que tiene detrás para que esto sea así. Ninguna otra plataforma, lenguaje, framework o sistema tiene tantas personas trabajando a tiempo completo para que todo lo que rodea a los lenguajes sea de tan buena calidad, y eso se nota. 

Por cierto .NET 9 es una versión corta de .NET lo que implica que muchos no vais a utilizarla ya que vuestra empresa esperara a .NET 10.

 

 

1 - Mejoras NET Aspire en .NET 9

 

Lo primero que vimos este año fue .NET Aspire, y no es de extrañar, pues fue el gran anuncio del año anterior y la comunidad está ansiosa por mejoras en esta librería.

 

En este blog, vimos un post sobre dotnet aspire y pese a que yo tengo mi opinión personal de que se inspiraron en mi librería de Distribt la realidad es que es una aplicacion muy buena para la productividad y facilidad de trabajo cuando trabajamos en sistemas distribuidos.

 

Básicamente Aspire Simplifica el uso de contenedores, recursos, despliegues o incluso monitorización.

dotnet aspire

Solo hace unos meses que lanzaron Aspire asi que la gran mayoría de mejoras aquí han sido funcionalidades que no estaban, por ejemplo conectarse a prácticamente cualquier base de datos, compatibilidad con azure functions, integración con OpenAI, Ollama, etc.

Y algo muy importante, una mejora, es la automatización para desplegar en Azure container apps, y que así su adopción sea más rápida.

 

Durante la conferencia hemos visto multitud casos de ejemplo y tutoriales sobre cómo trabajar con Aspire y la verdad es que está muy bien, si estás interesado, dale un ojo.

 

Personalmente pienso que lo de tener un monorepo para sistemas distribuidos no funciona en aplicaciones empresariales distribuidas. Pero el resto de funcionalidades como la integración con opentelemetry y el dashboard y lo que llaman integrations (que es básicamente distribt)  es crucial para dichos sistemas distribuidos, así que por ahí muy bien. 

Si vais a ver la conferencia, una cosa a tener en cuenta es que la gran mayoría de aplicaciones que mostraban lo hicieron dentro de proyectos de Aspire, en algunos casos no proporcionaba mucho valor en mi opinión, pero bueno, hay que mover a la gente. 

 

Finalmente, el anuncio de .NET Aspire Community Toolkit, que básicamente es un lugar para aplicar integraciones.  Aquí está el anuncio oficial.

 

 

2 - Integración de Inteligencia Artificial en .NET 9

 

Introduzca aquí el meme de AI, AI, AI, AI…

 

Bueno bromas aparte, la integración de AI dentro de nuestros sistemas es una realidad y va a pasar, es algo que tenemos que asumir, el equipo de desarrollo está tomando la iniciativa para facilitar a los desarrolladores dicha integración. Para ello nos proporcionan del paquete Microsoft.Extensions.AI, que funciona como abstracción para diferentes modelos y servicios.

Inteligencia artificial .NET 9

Con este nuevo paquete tenemos integraciones con Azure, OpenAI, Llama, Ollama, Qdrant, etc. En una demo que presentó Steve Sanderson pudimos ver la simplicidad de dichas integraciones y cuán poderoso puede llegar a ser la IA si la utilizamos de la forma correcta. 

 

Recomiendo a todo el mundo que vea la presentación. (pondré el link si la suben de forma individual).

 

 

3 - Mejoras MAUI en .NET 9

 

Sinceramente estaba esperando que nos dieran la muerte anunciada de MAUI, pero me llevé una grata sorpresa

 

Para los que no esteis al dia MAUI es una plataforma para crear aplicaciones multiplataforma tanto windows como mac así como de móvil para android e iOS, fue lanzada en .NET 7 de forma oficial. Pero debería haber sido lanzada en .NET 6 ya que la tuvieron que posponer un año y eso le hizo mucho daño pues otras librerías como Uno Platform o Avalonia tomaron la delantera.

 

Personalmente pensaba que microsoft la dejaría morir, pero no, le han metido mucha caña y este año han arreglado más bug y lanzado más funcionalidades que nunca.

Cambios de MAUI en .NET 9

Además han unido fuerzas con syncfusion para su interfaz con el MAUI Toolkit

 

Así que a ver si siguen por el buen camino y revitalizan MAUI del todo porque las opiniones que leo online no son las mejores

Desde mi punto de vista, MAUI sigue funcionando como shell de blazor, así que dependiendo de la cantidad de uso que la APP vaya a tener, esta puede ser la mejor opción:

MAUI como Shell de blazor

 

 

4 - Novedades C# 13

 

No fue hasta bien pasado 3 horas en el evento cuando vimos las novedades dentro de C# 13, y es de extrañar pues desde que yo hago estos posts siempre había sido de lo primero que mostraban en pantalla. 

 

Tiene una explicación sencilla y es que este año no hay tantas mejoras como otros, o bueno, si las hay, pero no tienen tanto impacto como en versiones anteriores y quizá por ello no le den tanta importancia. 

 

En este blog vimos un post muy completo con las novedades de C# 13 .NET 9

 

 

5 -  Mejoras ASP.NET CORE y Blazor en .NET 9

 

Al margen de estas charlas principales, van mencionando cambios aquí y allá para diferentes sistemas y esto es lo que pudimos ver importante dentro de ASP.NET core y Blazor

mejoras asp.net core y blazor

 

5.1 - Nueva caché distribuida para .NET9

Hasta ahora siempre hemos utilizado IDistributedCache y en términos de rendimiento no es la mejor opción porque trabaja directamente con key-value donde el valor es una array de bytes, esto tiene un problema y es que es ineficiente a la hora de asignar los bytes en memoria y luego puede ser afectada por lo que se denomina como caché stampede.

Cache stampede es cuando muchas request se hacen de forma simultánea para la misma key, y si no está en la caché, todas terminan en la base de datos.

 

En .NET 9 tenemos la nueva clase HybridCache, que soluciona todos los problemas mencionados anteriormente, tiene más funcionalidades como caché en memoria y distribuida de forma simultanea, y para la gran mayoría de casos funciona simplemente cambiando el tipo que hemos inyectado

 

 

5.2 - Mejoras de SignalR en .NET 9

Pequeñas mejoras dentro de SignalR como son el soporte para AOT, algo bastante importante. Polimorfismo funciona el el hub y una mejora en el tracing que viene muy bien por el tema de aspire, observabilidad, etc. 

 

 

6 - Otras charlas de la dotnetconf 2024

 

Como siempre, una pequeña sección para mencionar otras charlas o sesiones que merecen la pena tener en cuenta.

 

6.1 - Azure con .NET 9 y Aspire

Muchas charlas relacionadas con Azure, especialmente útiles para aquellos que trabajáis con Aspire ya que hay varias charlas relacionadas con ello, y muestran como es bastante sencillo implementar servicios de Aspire en Azure. 

 

 

6.2 - Eliminación de swagger en C#

Swagger ya no viene con las plantillas por defecto, esto es debido a que el equipo de microcefalia ha creado el paquete Microsoft.AspNetCore.OpenApi el cual genera el documento de OpenApi, igual que lo hacía swagger pero mantenido por Microsoft. 

 

Si tienes mas curiosidad sobre el porque de este cambio, aquí está el hilo de GitHub donde se explica.

 

 

6.3 - Testing.Framework en .NET

Hemos tenido un anuncio de una alternativa a VS test, la cual está pensada para ejecutar tests en múltiples entornos como pueden ser tu PC, la CLI la pipeline de CI/CD o donde sea, ya que no depende de vstest.console o del comando dotnet test porque se integra directamente en el proyecto en sí, lo que facilita la portabilidad.

testing.framework .net 9

Cabe destacar que es completamente compatible con todos los frameworks de test actuales.  En este blog intentaré mostrar algunos ejemplos ya que la charla me pareció muy interesante. 

 

 

6.4 - Blazor y MudBlazor

Ya que no ha habido ningún anuncio importante dentro de blazor como tal, quiero hacer mención a la librería mudblazor la cual es una librería de UI y facilita la creación de aplicaciones utilizando blazor. Solo toque la librería hace un par de años para hacer unas pruebas y me gustó bastante. Y aprovechando que hicieron una charla, pues lo menciono aquí. 

 

 

6.5 - Aplicaciones multiplataforma en .NET 

Como cada año, igual que con MAUI,  tuvimos sesiones de Avalonia y UNO platform que son las opciones más populares hoy en día para crear aplicaciones multiplataforma con C#

 

Mención especial a Héctor Uriel Pérez Rojas que hizo una presentación sobre una herramienta que ha creado (https://xamlify.net/) para convertir diseños de Figma a xaml y que personalmente me pareció muy buena. 

 

Uso del bloqueador de anuncios adblock

Hola!

Primero de todo bienvenido a la web de NetMentor donde podrás aprender programación en C# y .NET desde un nivel de principiante hasta más avanzado.


Yo entiendo que utilices un bloqueador de anuncios como AdBlock, Ublock o el propio navegador Brave. Pero te tengo que pedir por favor que desactives el bloqueador para esta web.


Intento personalmente no poner mucha publicidad, la justa para pagar el servidor y por supuesto que no sea intrusiva; Si pese a ello piensas que es intrusiva siempre me puedes escribir por privado o por Twitter a @NetMentorTW.


Si ya lo has desactivado, por favor recarga la página.


Un saludo y muchas gracias por tu colaboración

© copyright 2024 NetMentor | Todos los derechos reservados | RSS Feed

Buy me a coffee Invitame a un café