Nå kan du prøve .NET 10 og C# 14: Dette er nytt

Microsoft har lansert Preview 1 av .NET 10, med en masse nytt under panseret. Her er noen av de viktigste nyhetene.

Det er ikke mer enn rundt tre måneder siden Microsoft lanserte den endelige versjonen av .NET 9-plattformen – men allerede nå kan du laste ned og prøve ut neste versjon: .NET 10.

Denne uken lanserte nemlig Microsoft den første Preview-versjonen av .NET 10, med en masse nytt blant annet i .NET Runtime, SDK-et, biblioteker, C#, ASP.NET Core, Blazor og .NET Maui.

Den endelige versjonen av .NET 10 kommer sannsynligvis i en produksjonsklar versjon i november.

Her er noen av de viktigste nyhetene. Du kan lese flere detaljer på Microsofts nettsider. I bunnen av artikkelen kan du også se en "Unboxing"-video fra lanseringen.

Mange forbedringer i C# 14

Ny versjon av .NET betyr også ny versjon av programmeringsspråket C#.

I C# 14 introduseres en rekke nye funksjoner og forbedringer som ifølge Microsoft skal øke produktiviteten til utviklere og kodekvaliteten.

En av nyhetene er førsteklasses støtte for typene System.Span<T> og System.ReadOnlySpan<T>. Denne støtten innebærer ifølge Microsoft "nye implisitte konverteringer som gjør det mulig med mer naturlig programmering med disse typene".

Span<T> og ReadOnllySpan<T> brukes på mange måter i C# og i C#-kjøremiljøet, og den nye støtten skal forbedre ytelsen uten at det går på bekostning av sikkerheten.

Ellers nevner Microsoft disse nyhetene:

  • nameof in unbound generics
  • Implicit span conversions
  • field backed properties
  • Modifiers on simple lambda parameters
  • Experimental feature - String literals in data section

Du kan lese mer om alt som er nytt i C# 14 på denne siden.

Raskere .NET 10 runtime

Også i .NET 10-kjøretidsmiljøet (runtime) har Microsoft introdusert en del ny funksjonalitet og ytelsesforbedringer.

– Ett av hovedfokusområdene for .NET 10 er å redusere abstraksjons-overheaden til populære språkfunksjoner. For å oppnå dette har JIT-kompilatorens evne til å devirtualisere metodekall blitt utvidet til å dekke array interface-metoder, skriver Microsoft.

I praksis betyr det at JIT-kompilatoren nå kan optimalisere kode som looper over et array selv om virtuelle kall er involvert. For eksempel er denne koden i dag enkel for JIT-kompilatoren å optimalisere:

static int Sum(int[] array)
{
    int sum = 0;
    for (int i = 0; i < array.Length; i++)
    {
        sum += array[i];
    }
    return sum;
}

Mens kodesnutten under inneholder virtuelle metodekall, som inntil nå har gitt dårligere ytelse. I C# 14 vil imidlertid denne koden kjøre like kjapt:

static int Sum(int[] array)
{
    int sum = 0;
    IEnumerable<int> temp = array;

    foreach (var num in temp)
    {
        sum += num;
    }
    return sum;
}

Du kan lese mer om dette her.

Under kan du se en "Unboxing"-video av .NET 10, med live demoer av noe av det som er nytt: