Spoločnosť Microsoft predstavila významnú novú verziu otvorenej platformy .NET 6, ktorá vznikla zjednotením produktov .NET Framework, .NET Core a Mono. S .NET 6 môžete vytvárať multiplatformové aplikácie naprieč prehliadačom, cloudom, desktopom, IoT zariadeniami a mobilnými platformami pomocou bežných knižníc a bežného procesu zostavovania nezávislého od aplikácie. Zostavy .NET SDK 6, .NET Runtime 6 a ASP.NET Core Runtime 6 sú vytvorené pre Linux, macOS a Windows. .NET Desktop Runtime 6 je k dispozícii iba pre Windows. Vývoj súvisiaci s projektom je distribuovaný pod licenciou MIT.
.NET 6 obsahuje runtime CoreCLR s kompilátorom RyuJIT JIT, štandardné knižnice, knižnice CoreFX, WPF, Windows Forms, WinUI, Entity Framework, rozhranie príkazového riadku dotnet a nástroje na vývoj mikroslužieb, knižníc, serverových, grafických a konzolových aplikácií. Samostatne sú publikované balíky vývoja webových aplikácií ASP.NET Core 6.0 a vrstva ORM Entity Framework Core 6.0 (ovládače vrátane tých pre SQLite a PostgreSQL), ako aj vydania C# 10 a F# 6. Podpora pre .NET 6.0 a C# 10 je súčasťou bezplatného editora kódu Visual Studio.
Vlastnosti nového vydania:
- Výrazne vylepšený výkon vrátane optimalizácie I/O súboru.
- C# 10 zavádza podporu štruktúr vo forme záznamov (record struct), globálnej direktívy using, súborovo viazaných menných priestorov a nových funkcií pre lambda výrazy. Do kompilátora bola pridaná podpora pre prírastkové generovanie zdrojového kódu.
- F# 6 zavádza podporu pre mechanizmus vykonávania asynchrónnych úloh a reťazové ladenie.
- K dispozícii je funkcia Hot Reload, ktorá poskytuje prostriedky na úpravu kódu za behu programu, čo umožňuje vykonávať zmeny bez manuálneho zastavenia vykonávania a bez pripájania bodov prerušenia. Vývojár môže aplikáciu spustiť pod „dotnet watch“, po ktorej sa zmeny vykonané v kóde automaticky aplikujú na spustenú aplikáciu, čo vám umožní okamžite sledovať výsledok.
- Pridaný nástroj "dotnet monitor" na prístup k diagnostickým informáciám pre proces dotnet.
- Navrhuje sa nový systém dynamickej optimalizácie na základe výsledkov profilovania kódu (PGO - Profile-guided optimization), ktorý umožňuje generovať optimálnejší kód na základe analýzy funkcií vykonávania. Použitie PGO zlepšilo výkon sady TechEmpower JSON „MVC“ o 26 %.
- ASP.NET Core, HttpClient a gRPC pridali podporu pre protokol HTTP/3.
- Rozšírené API súvisiace s formátom JSON. Pridaný nový generátor kódu System.Text.Json a systém serializácie údajov JSON.
- Blazor, rámec webových aplikácií v jazyku C#, pridáva podporu pre vykresľovanie komponentov Razor z JavaScriptu a integráciu s existujúcimi aplikáciami JavaScript.
- Pridaná podpora pre kompiláciu kódu .NET do zobrazenia WebAssembly.
- Do File IO API bola pridaná podpora pre symbolické odkazy. Kompletne napísaný FileStream.
- Pridaná podpora pre knižnicu OpenSSL 3 a kryptografické algoritmy ChaCha20/Poly1305.
- Runtime implementuje ochranné mechanizmy W^X (Write XOR Execute) a CET (Control-flow Enforcement Technology).
- Pridaná experimentálna podpora pre iOS a Android ako platformy TFM (Target Framework Moniker).
- Výrazne vylepšená podpora pre systémy Arm64. Pridaná podpora pre zariadenia Apple založené na čipe ARM M1 (Apple Silicon).
- Bol poskytnutý proces zostavovania .NET SDK zo zdroja, čo uľahčuje zostavovanie balíčkov c .NET pre linuxové distribúcie.
Zdroj: opennet.ru