Microsoft heeft een open platform .NET 11 uitgebracht

Microsoft heeft de release aangekondigd van het open platform .NET 11, dat is ontstaan uit de unificatie van de producten .NET Framework, .NET Core en Mono. Op basis van .NET 11 kunnen multiplatformtoepassingen worden ontwikkeld voor de browser, cloudsystemen, desktops, IoT-apparaten en mobiele platforms, met gebruik van uniforme bibliotheken en een gezamenlijk bouwproces, ongeacht het type applicatie. De .NET SDK 11, .NET Runtime 11 en ASP.NET Core Runtime 11 zijn geconfigureerd voor Linux, macOS en Windows. .NET Desktop Runtime 11 is alleen beschikbaar voor Windows. Gerelateerde projectontwikkelingen worden verspreid onder de MIT-licentie.

.NET omvat Runtime met de JIT-compiler RyuJIT, API-specificaties, bibliotheken voor WPF, Windows Forms, WinUI en Entity Framework, evenals de opdrachtregelinterface.
dotnet, en hulpmiddelen voor het ontwikkelen van microservices, bibliotheken, server- en console-applicaties. Separaat beschikbaar is de stack voor het ontwikkelen van webtoepassingen ASP.NET Core 11.0, de ORM-laag Entity Framework Core 11.0 (met drivers, waaronder voor SQLite en PostgreSQL), de WPF 11-bibliotheek (Windows Presentation Foundation), het Windows Forms 11-framework voor het ontwikkelen van GUI's, het Aspire 11-platform voor het creƫren van Cloud Native-applicaties, het MAUI 11-framework voor het ontwikkelen van multiplatformgebruikersinterfaces, evenals de releases van de talen C# 15 en F# 11. Ondersteuning voor .NET 11.0 en C# 15 is opgenomen in de gratis code-editor Visual Studio Code.

Kenmerken van de nieuwe release:

  • In de programmeertaal C# 15 is het trefwoord union toegevoegd voor het declareren van een type waarvan de waarde slechts ƩƩn van de vooraf gedefinieerde typen kan zijn. Een variabele van het union-type kan waarden van elk van de toegestane typen krijgen, en bij de poging om een waarde van een niet-gemeld type toe te wijzen, zal de compiler een foutmelding geven.

    public record class Cat(string Name);
    public record class Dog(string Name);
    public record class Bird(string Name);

    public union Pet(Cat, Dog, Bird);

    Voor klassen is een modifier 'closed' voorgesteld, waarmee gesloten hiƫrarchieƫn (closed hierarchy) kunnen worden gemaakt, waarin overerving van een basisklasse met de modifier closed alleen is toegestaan binnen de assembly waarin deze is gedeclareerd, en waarbij tijdens de compilatie de volledige set directe afstammelingen bekend is. Union-typen en gesloten hiƫrarchieƫn garanderen dat in de switch-structuur alle mogelijke varianten zijn behandeld, waardoor het mogelijk is om zonder een 'default'-tak en de variabele '_' uit te komen.

    In de nieuwe versie van C# is ook ondersteuning toegevoegd voor het overschakelen van de 'break'- en 'continue'-uitdrukkingen naar de toegewezen labels en zijn de experimentele mogelijkheden voor isolatie in unsafe-codeblokken, die rechtstreeks met geheugen werken, uitgebreid (de mogelijkheid om unsafe toe te passen is toegevoegd voor losse uitdrukkingen).

  • In de taal F# 11 is het geheugengebruik door de compiler verminderd en is het aantal geheugenallocaties tijdens het werken met de FSharp.Core-collecties gereduceerd. De mogelijkheid om het aantal parallel uitgevoerde asynchrone taken te beperken is toegevoegd om overbelasting te voorkomen. Voorlopige ondersteuning voor Runtime Async is toegevoegd.
  • In de SDK zijn standaard ingeschakeld server MSBuild en de vooraf gecompileerde (NativeAOT) versie van de CLI-toolset dotnet.
    De grootte van de SDK-installers voor Linux en macOS is verkleind door het dedupliceren van assemblies.
  • De JIT-compiler is geoptimaliseerd, overbodige grenscontroles en vertakkingen zijn verwijderd, de devirtualisatie is verbeterd en er is meer constant folding geproduceerd. In de AOT-compiler is een gemeenschappelijke aanroepverwerker gebruikt die het aantal regels code heeft verminderd en de doorvoer bij intensief gebruik van interfaces heeft verhoogd. Voor Linux en macOS is het opslaan van stacktracelogs en module-informatie bij fouten geĆÆmplementeerd.
  • Een experimenteel mechanisme voor Runtime Async is toegevoegd om de door de compiler gegenereerde code voor het verwerken van async-operaties te vervangen door een implementatie die de pauzering en hervatting van asynchrone taken op runtime-niveau beheert.
  • In de SDK is een sjabloon toegevoegd de server MCP voor integratie met AI-tools en -services. Voor toepassingen die AI-services gebruiken, is een set abstraheringen Microsoft.Extensions.AI (MEAI) toegevoegd. Op basis van deze abstraheringen is
    het Microsoft Agent Framework (MAF) gevormd, dat kan worden gebruikt voor het creƫren van AI-agenten.
  • In de API Process zijn de mogelijkheden voor het starten van processen met het onderscheppen van hun uitvoer en exitcodes uitgebreid, evenals controle over geĆ«rfde descriptors.
  • In de API System.IO.Compression is ondersteuning toegevoegd voor het compressie-algoritme Zstandard.
  • Er zijn nieuwe stream-adapters toegevoegd: ReadOnlyMemoryStream, WritableMemoryStream, ReadOnlySequenceStream en StringStream.
  • De dotnetup-tool is toegevoegd voor de installatie en bijwerking van de SDK en runtime.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster