Microsoft har lanserat en öppen plattform .NET 11, som skapades genom en enhetlig utveckling av produkterna .NET Framework, .NET Core och Mono. Med .NET 11 kan man skapa plattformsoberoende applikationer för webblÀsare, molnsystem, skrivbord, IoT-enheter och mobila plattformar, med hjÀlp av enhetliga bibliotek och en gemensam byggprocess som inte beror pÄ typ av applikation. Byggsatserna .NET SDK 11, .NET Runtime 11 och ASP.NET Core Runtime 11 har skapats för Linux, macOS och Windows. .NET Desktop Runtime 11 levereras endast för Windows. Relaterade projektverktyg distribueras under MIT-licensen.
.NET inkluderar en Runtime med JIT-kompilatorn RyuJIT, API-specifikationer, WPF-bibliotek, Windows Forms, WinUI och Entity Framework, samt ett kommandoradsgrÀnssnitt.
dotnet, samt verktyg för utveckling av mikrotjÀnster, bibliotek, serverbaserade, grafiska och konsolapplikationer. Separat levereras en stack för webbutveckling via ASP.NET Core 11.0, ORM-lagret Entity Framework Core 11.0 (drivrutiner finns ocksÄ för SQLite och PostgreSQL), WPF-biblioteket 11 (Windows Presentation Foundation), Windows Forms 11-ramverket för GUI-utveckling, Aspire 11-plattformen för skapande av Cloud Native-applikationer, MAUI 11-ramverket för utveckling av plattformsoberoende anvÀndargrÀnssnitt, samt utgÄvor av sprÄken C# 15 och F# 11. Stöd för .NET 11.0 och C# 15 ingÄr i den gratis kodredigeraren Visual Studio Code.
Nyhetsfunktioner:
- I C# 15 har nyckelordet union lagts till för att deklarera en typ vars vÀrde endast kan vara en av de förhandsgivna typalternativen. Variabeln av union-typ kan tilldelas vÀrden av nÄgon av de tillÄtna typerna, och vid försök att tilldela ett vÀrde av en typ som inte uppgetts vid deklarationen kommer kompilatorn att ge ett felmeddelande.
public record class Cat(string Name);
public record class Dog(string Name);
public record class Bird(string Name);public union Pet(Cat, Dog, Bird);
För klasser föreslÄs en modifierare "closed", med vilken man kan skapa stÀngda hierarkier (closed hierarchy), dÀr Àrvande frÄn en bas klass med modifieraren closed endast Àr tillÄten inom den samling dÀr den deklarerades och vid kompileringstiden Àr hela uppsÀttningen av direkta Àttlingar kÀnd. Union-typer och slutna hierarkier sÀkerstÀller att alla möjliga alternativ behandlas i switch-konstruktionen, vilket gör att man kan klara sig utan en "default"-gren och variabeln "_".
I den nya versionen av C# har stödet för övergÄngar frÄn "break"- och "continue"-uttryck till angivna etiketter lagts till, och de experimentella möjligheterna för isolering i osÀkra kodblock som direkt arbetar med minnet har utökats (möjligheten att anvÀnda osÀkert för enskilda uttryck har lagts till).
- I F# 11 har minnesanvÀndningen av kompilatorn minskats och antalet minnesallokeringar vid arbete med FSharp.Core-samlingar har reducerats. Möjligheten att begrÀnsa parallellt utförda asynkrona arbeten har lagts till för att förhindra överbelastning. Förhandsstöd för Runtime Async har lagts till.
- SDK:n har som standard inkluderat server MSBuild och den förkompilerade (NativeAOT) versionen av CLI-verktygen dotnet.
Installatörerna för SDK för Linux och macOS har minskat i storlek genom deduplicering av samlingar. - JIT-kompilatorn har optimerats, överflödiga grÀnskontroller och förgreningar har tagits bort, devirtualisering har förbÀttrats och operationer har utvidgats till konstanter. I AOT-kompilatorn har en gemensam anropshanterare anvÀnts, vilket har minskat mÀngden kod och ökat genomströmningskapaciteten vid intensiv Ätkomst till grÀnssnitt. För Linux och macOS har bevarande av stackspÄrning och modulinformation vid fel implementerats.
- En experimentell Runtime Async-mekanism har lagts till för att ersÀtta den kod som hanteras av kompilatorn för async-operationer med en implementation som hanterar pausering och Äterupptagning av asynkrona operationer pÄ runtime-nivÄ.
- En mall har lagts till i SDK:n servern MCP för integration med AI-verktyg och -tjÀnster. För applikationer som anvÀnder AI-tjÀnster har en uppsÀttning abstraktioner Microsoft.Extensions.AI (MEAI) lagts till. Baserat pÄ dessa abstraktioner har den
Microsoft Agent Framework (MAF) skapats, som kan anvÀndas för att skapa AI-agenter. - I Process-API:t har möjligheterna till processstart med fÄngst av deras utdata och avslutningskoder, samt kontroll över Àrvda descriptorer, utökats.
- I System.IO.Compression-API:t har stöd för Zstandard-komprimeringsalgoritmen lagts till.
- Nya flödesadaptrar ReadOnlyMemoryStream, WritableMemoryStream, ReadOnlySequenceStream och StringStream har lagts till.
- Verktyget dotnetup har lagts till för installation och uppdatering av SDK och runtime.
KĂ€lla: opennet.ru
