Release van het open source-platform .NET 6

Microsoft heeft een belangrijke nieuwe release onthuld van het open platform .NET 6, gecreëerd door het verenigen van de .NET Framework-, .NET Core- en Mono-producten. Met .NET 6 kunt u multi-platformapplicaties bouwen voor de browser, cloud, desktop, IoT-apparaten en mobiele platforms met behulp van gemeenschappelijke bibliotheken en een gemeenschappelijk bouwproces dat onafhankelijk is van het applicatietype. .NET SDK 6, .NET Runtime 6 en ASP.NET Core Runtime 6 builds zijn beschikbaar voor Linux, macOS en Windows. .NET Desktop Runtime 6 is alleen beschikbaar voor Windows. Werk gerelateerd aan het project wordt gedistribueerd onder de MIT-licentie.

.NET 6 bevat runtime CoreCLR met de RyuJIT JIT-compiler, standaardbibliotheken, CoreFX-bibliotheken, WPF, Windows Forms, WinUI, Entity Framework, dotnet-opdrachtregelinterface, evenals tools voor het ontwikkelen van microservices, bibliotheken, server-side, GUI en console toepassingen. De stack voor het ontwikkelen van webapplicaties ASP.NET Core 6.0 en de ORM-laag Entity Framework Core 6.0 (drivers zijn ook beschikbaar voor SQLite en PostgreSQL), evenals releases van de talen C# 10 en F# 6 zijn afzonderlijk gepubliceerd. voor .NET 6.0 en C# 10 is opgenomen in de gratis code-editor Visual Studio Code.

Kenmerken van de nieuwe release:

  • De prestaties zijn aanzienlijk verbeterd, inclusief optimalisatie van bestands-I/O.
  • C# 10 introduceert ondersteuning voor recordstructuren, de globale gebruiksrichtlijn, bestandsgebonden naamruimten en nieuwe functies voor lambda-expressies. Ondersteuning voor het incrementeel genereren van broncode is aan de compiler toegevoegd.
  • F# 6 introduceert ondersteuning voor het asynchrone taakuitvoeringsmechanisme en pijplijnfoutopsporing.
  • Er is een Hot Reload-functie beschikbaar waarmee u code direct kunt bewerken terwijl een programma draait, waardoor wijzigingen kunnen worden aangebracht zonder de uitvoering handmatig te stoppen of breekpunten toe te voegen. Een ontwikkelaar kan een applicatie draaien met "dotnet watch", waarna wijzigingen in de code automatisch worden toegepast op de draaiende applicatie, waardoor je direct het resultaat ziet.
  • Hulpprogramma "dotnet monitor" toegevoegd om toegang te krijgen tot diagnostische informatie over het dotnet-proces.
  • Er wordt een nieuw systeem van dynamische optimalisatie voorgesteld, gebaseerd op de resultaten van codeprofilering (PGO - Profielgeleide optimalisatie), waarmee een meer optimale code kan worden gegenereerd op basis van een analyse van uitvoeringskenmerken. Het gebruik van PGO verbeterde de prestaties van de TechEmpower JSON "MVC" -suite met 26%.
  • Ondersteuning voor HTTP/3-protocollen is toegevoegd aan ASP.NET Core, HttpClient en gRPC.
  • De API gerelateerd aan het JSON-formaat is uitgebreid. Een nieuwe codegenerator System.Text.Json toegevoegd en een systeem voor het serialiseren van gegevens in JSON-formaat.
  • Blazor, een platform voor het maken van webapplicaties in C#, heeft ondersteuning toegevoegd voor het weergeven van Razor-componenten vanuit JavaScript en integratie met bestaande JavaScript-applicaties.
  • Ondersteuning toegevoegd voor het compileren van .NET-code in een WebAssembly-weergave.
  • Ondersteuning toegevoegd voor symbolische koppelingen naar de File IO API. Volledig voorgeschreven FileStream.
  • Ondersteuning toegevoegd voor de OpenSSL 3-bibliotheek en ChaCha20/Poly1305 cryptografische algoritmen.
  • Runtime implementeert beveiligingsmechanismen W^X (Write XOR Execute, die gelijktijdige schrijf- en uitvoeringstoegang verbieden) en CET (Control-flow Enforcement Technology, bescherming tegen uitvoering van exploits gebouwd met behulp van retourgerichte programmeertechnieken).
  • Experimentele ondersteuning toegevoegd voor iOS en Android als TFM-platforms (Target Framework Moniker).
  • Aanzienlijk verbeterde ondersteuning voor Arm64-systemen. Ondersteuning toegevoegd voor Apple-apparaten op basis van de M1 ARM-chip (Apple Silicon).
  • Er wordt voorzien in het proces voor het bouwen van .NET SDK vanuit de broncode, wat het werk van het maken van .NET-pakketten voor Linux-distributies vereenvoudigt.

Voeg een reactie