Microsoft va donar a conèixer el llançament de la nova versio de «.NET 9» una plataforma oberta que unifica els productes prèviament separats com .NET Framework, .NET Core i Mono. NET 9.0 introdueix una sèrie de millores en el rendiment, optimització al compilador, millores al runtime, entre altres coses més.
Un dels canvis més importants de .NET 9.0 és la modernització del recol·lector d'escombraries, que ara implementa un mecanisme dadaptació dinàmica a la mida de l'aplicació. Això significa que el recol·lector no està lligat a la quantitat de recursos disponibles al sistema, sinó a la quantitat de memòria que l'aplicació necessita.
A més, s'han realitzat optimitzacions al compilador JIT, amb la incorporació de noves optimitzacions basades en perfils (PGO), millores en el maneig de bucles i desenrotllat en línia, i una optimització en el maneig d'excepcions que incrementa la velocitat un 50%. El codi amb operadors de transmissió ha experimentat millores de rendiment de fins a un 70% i també s'han fet millores en el rendiment de consultes LINQ, especialment en els mètodes Take i DefaultIfEmpty quan es treballen amb matrius i col·leccions buides, aconseguint millores de fins a 10 vegades en alguns casos.
Pel que fa a la biblioteca System.Text.Json, s'ha millorat notablement rendiment i eficiència. El mètode JsonProperty.WriteTo ara és capaç d'escriure cadenes UTF8 directament, eliminant l'assignació innecessària de memòria, cosa que resulta en una millora del 15% en el rendiment i una reducció del 93% en el consum de memòria en proves comparatives amb .NET 8.
El Runtime també introdueix un nou model d'atributs que permet activar i desactivar funcions en biblioteques de manera més eficient. En el llenguatge C# 13, s'han ampliat les capacitats del modificador params, permetent no només l'ús d'arrays sinó també col·leccions.
També es va introduir un operador ^ per especificar índexs des del final d'una matriu, cosa que facilita la manipulació d'arrays. A més, es permeten iteradors i mètodes asíncrons que poden utilitzar expressions ref i no segures. Per acabar, s'ha proposat un nou tipus de bloqueig per millorar el maneig d'aplicacions multiprocés.
la versió F# 9 ha el suport per a tipus que poden acceptar valors nuls, cosa que amplia les capacitats del llenguatge. A més, les unions ara implementen propietats «.Is*» generades automàticament, cosa que facilita la comprovació de si un valor pertany a un conjunt específic. Per exemple, amb les unions, es poden verificar valors com ara person.contact.IsEmail.
En les directives que comencen amb el símbol #, ara es permeten valors que no siguin cadenes. També s'ha afegit la capacitat de seleccionar o barrejar elements aleatòriament en mòduls com ara List, Array i Seq. Les operacions de recopilació també s'han millorat i han permès més facilitats per treballar amb llistes i conjunts.
D'altra banda, la pila .NET Aspire ara ofereix un conjunt més robust de components per crear aplicacions en entorns de núvol. Això inclou noves capacitats per gestionar el cicle de vida d'aplicacions i recursos, a més de millores en les eines de recopilació de telemetria.
Quant a C#, s'ha proposat un conjunt de noves abstraccions per facilitar el desenvolupament de aplicacions d'intel·ligència artificial. Aquestes abstraccions inclouen l'ús de grans models de llenguatge, l'accés a magatzems de vectors i interaccions amb serveis d'IA.
A més s'ha introduït un nou tipus Tensor i mètodes per calcular i manipular dades multidimensionals, juntament amb complements. L'actualització de ML.NET també inclou millores, amb la nova biblioteca Microsoft.ML.Tokenizers per codificar i descodificar text a tokens.
Per al desenvolupament web, ASP.NET Core ha millorat el seu suport a la compilació, Oferint un millor rendiment, un menor consum de memòria i temps d'inici més ràpids. S'ha optimitzat també el treball amb fitxers estàtics, a més d'incloure una nova API per a autenticació i autorització. Blazor, la plataforma per crear aplicacions web amb C#, ha llançat noves plantilles tant per a aplicacions web com a híbrides, ampliant les possibilitats per als desenvolupadors.
MAUI (Multi-platform App UI) ha millorat el rendiment i la integració amb aplicacions descriptori i mòbils. Nous elements d'interfície com TitleBar i HybridWebView s'han afegit, facilitant encara més la creació d'aplicacions d'usuari interactives.
Finalment, WPF (Windows Presentation Foundation) ha augmentat la seva compatibilitat amb temes, afegint suport per a colors d'accent, cosa que permet als desenvolupadors personalitzar encara més l'aparença de les aplicacions de Windows.
Finalment si estàs interessat a poder conèixer més sobre això, pots consultar els detalls al següent enllaç.