Microsoft ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π° ΠΎΡ‚Π²ΠΎΡ€Π΅Π½Π°Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° .NET 7

Компания Microsoft прСдстави Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π΅Π½ ΡŠΠΏΠ΄Π΅ΠΉΡ‚ Π½Π° ΠΎΡ‚ΠΊΡ€ΠΈΡ‚Π°Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° .NET 7, създадСна Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° обСдиняванСто Π½Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΡ‚Π΅ .NET Framework, .NET Core ΠΈ Mono. Π‘ .NET 7 ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½ΠΈ прилоТСния Π·Π° Π±Ρ€Π°ΡƒΠ·ΡŠΡ€ΠΈ, ΠΎΠ±Π»Π°Ρ‡Π½ΠΈ систСми, настолни ΠΊΠΎΠΌΠΏΡŽΡ‚Ρ€ΠΈ, IoT устройства ΠΈ ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Π΅Π΄ΠΈΠ½Π½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ ΠΎΠ±Ρ‰ процСс Π½Π° компилация, нСзависимо ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ. ΠšΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΠΈΡ‚Π΅ Π½Π° .NET SDK 7, .NET Runtime 7 ΠΈ ASP.NET Core Runtime 7 са Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΈ Π·Π° Linux, macOS ΠΈ Windows. .NET Desktop Runtime 6 Π΅ Π½Π°Π»ΠΈΡ‡Π΅Π½ само Π·Π° Windows. Π‘Π²ΡŠΡ€Π·Π°Π½ΠΈΡ‚Π΅ с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сС разпространяват ΠΏΠΎΠ΄ лицСнция MIT. ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° вСрсията .NET 7 Ρ‰Π΅ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈ 18 мСсСца Π΄ΠΎ 14 ΠΌΠ°ΠΉ 2024 Π³.

.NET 7 Π²ΠΊΠ»ΡŽΡ‡Π²Π° runtime CoreCLR с JIT ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π° RyuJIT, стандартни Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ CoreFX, WPF, Windows Forms, WinUI, Entity Framework, интСрфСйс Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π΅Π½ Ρ€Π΅Π΄ dotnet, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ инструмСнти Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° микросСрвизи, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈ, Π³Ρ€Π°Ρ„ΠΈΡ‡Π½ΠΈ ΠΈ ΠΊΠΎΠ½Π·ΠΎΠ»Π½ΠΈ прилоТСния. ΠŸΠΎΠΎΡ‚Π΄Π΅Π»Π½ΠΎ Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ стСка Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΡƒΠ΅Π± прилоТСния ASP.NET Core 7.0, ORM слой Entity Framework Core 7.0 (с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π·Π° SQLite ΠΈ PostgreSQL), Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° WPF 7 (Windows Presentation Foundation), Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Windows Forms 7 Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° GUI, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Orleans 7 Π·Π° създаванС Π½Π° Cloud Native прилоТСния, Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ MAUI 7 Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½ΠΈ потрСбитСлски интСрфСйси, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ вСрсии Π½Π° Π΅Π·ΠΈΡ†ΠΈΡ‚Π΅ C# 11 ΠΈ F# 7. ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° .NET 7.0 ΠΈ C# 11 Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² бСзплатния Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Visual Studio Code.

Π₯арактСристики Π½Π° Π½ΠΎΠ²ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅:

  • Π˜Π·Π²ΡŠΡ€ΡˆΠ΅Π½Π° Π΅ унификация Π½Π° Π±Π°Π·ΠΎΠ²Π°Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΎΡ‚ класовС (BCL, Base Class Library) Π·Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅ прилоТСния, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ софтуСр Π·Π° настолни систСми, ΡƒΠ΅Π± прилоТСния, ΠΎΠ±Π»Π°Ρ‡Π½ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ, ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ прилоТСния, ΠΈΠ³Ρ€ΠΈ, Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ ΠΈ систСми Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅. Π—Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅ прилоТСния ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π΅Π΄ΠΈΠ½ ΠΎΠ±Ρ‰ SDK, Runtime ΠΈ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.
  • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π΅Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ с API, ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π°Ρ‰ Π½Π° вСрсия .NET 7, Ρ‡Ρ€Π΅Π· опрСдСлянС Π½Π° Ρ†Π΅Π»Π΅Π²Π°Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Β«net7.0Β», Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«net7.0Β». Π—Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ с API, спСцифични Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚Π΅ Ρ‚ΠΈΠΏΠ° Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°Ρ‚ΠΎ посочитС Β«net7.0-androidΒ».
  • Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° ARM64 ΠΈ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π·Π° постиганС Π½Π° ΠΏΠ°Ρ€ΠΈΡ‚Π΅Ρ‚ Π² производитСлността Π½Π° прилоТСния .NET ΠΏΡ€ΠΈ изпълнСниС Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ x86 ΠΈ ARM64. Π’ runtime Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½Π° СфСктивността Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° кСша ΠΎΡ‚ Ρ‚Ρ€Π΅Ρ‚ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° систСми ARM64. Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ са инструкции LSE Π·Π° Ρ€Π°Π·Π³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ° Π΄ΠΎ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΎΡ‚ ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΈ ΠΏΠΎΡ‚ΠΎΡ†ΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ Π΄ΠΎΠ²Π΅Π»ΠΎ Π΄ΠΎ намаляванС Π½Π° Π·Π°ΠΊΡŠΡΠ½Π΅Π½ΠΈΡΡ‚Π° с 45%. Π’ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° са Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‡ΠΈ, ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅ Vector64, Vector128 ΠΈ Vector256, Π° ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΠΈ инструкции са прСнаписани Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ EncodeToUtf8 ΠΈ DecodeFromUtf8, ΠΊΠΎΠ΅Ρ‚ΠΎ осигурява ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° тяхната производитСлност Π΄ΠΎ 60% (Π·Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ NarrowUtf16ToAscii ΠΈ GetIndexOfFirstNonAsciiChar ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° производитСлността достига 35%). Π’ ΠΎΠ±Ρ‰ΠΈ Π»ΠΈΠ½ΠΈΠΈ, скоростта Π½Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π½Π° тСстовСтС Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° ARM64 Π΅ нараснала с 10-60%.
    Microsoft ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π° ΠΎΡ‚Π²ΠΎΡ€Π΅Π½Π°Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° .NET 7
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Linux, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π² стандартнитС Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π½Π° Ubuntu 22.04 са Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ с .NET 6 ΠΈ прСдоставСн ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½, ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π΅Π½ ΠΈ Π³ΠΎΡ‚ΠΎΠ² Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ docker-ΠΎΠ±Ρ€Π°Π· Π·Π° Π±ΡŠΡ€Π·ΠΎ Ρ€Π°Π·Π³Ρ€ΡŠΡ‰Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ с прилоТСния Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° .NET.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° 64-Π±ΠΈΡ‚ΠΎΠ²Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° IBM Power (ppc64le).
  • ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Π΅ инструмСнтариум .NET Upgrade Assistant Π·Π° опростяванС Π½Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅Ρ‚ΠΎ Π½Π° стари прилоТСния към вСрсиитС .NET 6 ΠΈΠ»ΠΈ .NET 7. Π’ Π½ΠΎΠ²Π°Ρ‚Π° вСрсия Π΅ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π·Π° миграция Π½Π° прилоТСния ΠΎΡ‚ ASP.NET към ASP.NET Core, Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΈ ΠΈ ΠΊΠΎΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈ Π½Π° ΠΊΠΎΠ΄Π° Π·Π° WinForms, WPF ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ с класовС, Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° изпълними Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° UWP (Universal Windows Platform).
  • Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° създаванС Π½Π° прилоТСния Π·Π° ΠΎΠ±Π»Π°Ρ‡Π½ΠΈ систСми (cloud-native) ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ PaaS (ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΊΠ°Ρ‚ΠΎ услуга). ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π΅Π½Π° Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° създаванС Π½Π° прилоТСния, ΠΎΠΏΠ°ΠΊΠΎΠ²Π°Π½ΠΈ Π² ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΈ, с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Β«dotnet publishΒ».
  • Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ са срСдствата Π·Π° прослСдяванС Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° прилоТСнията ΠΈ ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ относно тяхната Ρ€Π°Π±ΠΎΡ‚Π°. Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ ΡΡŠΠ±ΠΈΡ‚ΠΈΡ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° активността ΠΈ производитСлността Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ.
  • Π’ C# 11 Π±Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΈ Π½ΠΈΠ·ΠΎΠ²ΠΈ Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚ спСциални символи Π±Π΅Π· нСобходимостта ΠΎΡ‚ СскСйпванС (Ρ‚Π°ΠΊΠΈΠ²Π° Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΈ сС ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°Ρ‚ с Ρ‚Ρ€ΠΈ ΠΊΠ°Π²ΠΈΡ‡ΠΊΠΈ). ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈ са ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈ интСрфСйси Π·Π° матСматичСски Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Π΅ прСдоставСна Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° опрСдСлянС Π½Π° статични Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ във Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ интСрфСйси, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Π·Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° матСматичСски ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π±Π΅Π· Ρ‚ΠΎΡ‡Π½Π° информация Π·Π° Ρ‚ΠΈΠΏΠ° Π½Π° стойноститС.
  • Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ са Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π½Π° стандартната Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°. Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ API System.Formats.Tar Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с Π°Ρ€Ρ…ΠΈΠ²ΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Tar. Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с Π²Ρ€Π΅ΠΌΠ΅ (TimeStamp, DateTime ΠΈ Ρ‚.Π½.) Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° микросСкунди ΠΈ наносСкунди. Π’ System.Text.Json Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° сСриализацията ΠΈ дСсСриализацията Π½Π° Ρ‚ΠΈΠΏΠΎΠ²Π΅ .NET.
  • Π’ интСрфСйса Π½Π° командния Ρ€Π΅Π΄ Β«dotnet newΒ» Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ Π΄ΠΎΠ²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° шаблони Π·Π° стандартни ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Ρ‡Ρ€Π΅Π· натисканС Π½Π° клавиша Tab.
  • Π’ .NET SDK Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅Ρ‚ΠΎ Π½Π° доставСнитС шаблони Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈ Π² ΠΊΠΎΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ систСми Π΅ допустим шаблона.
  • Π’ NuGet Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ Π·Π° Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅, позволяващ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° зависимоститС Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π·Π° няколко ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.
  • ПовишСна Π΅ производитСлността Π½Π° JIT ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π°. Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° OSR (On Stack Replacement) Π·Π° промяна Π½Π° ΠΊΠΎΠ΄Π° Π½Π° Π²Π΅Ρ‡Π΅ ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Π½ΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ позволява внасянСто Π½Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‚Π΅, Ρ‡ΠΈΠΉΡ‚ΠΎ изпълнСниС ΠΎΡ‚Π½Π΅ΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅, Π±Π΅Π· Π΄Π° сС Ρ‡Π°ΠΊΠ° Π·Π°Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΎΡ‚ΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ (Π² тСста TechEmpower Π΅ отбСлязано повишСниС Π½Π° производитСлността Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° ΠΏΡŠΡ€Π²ΠΈΡ‚Π΅ заявки с 10-30%).
  • ПовишСна СфСктивност Π½Π° оптимизацията, основана Π½Π° Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ ΠΎΡ‚ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠ΄Π° (PGO β€” Profile-guided optimization), позволяваща ΠΎΡ‚Ρ‡ΠΈΡ‚Π°Π½Π΅ Π½Π° характСристикитС, опрСдСляни ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° изпълнСниС Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°Ρ‚Π°.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ Π² ΡΠ°ΠΌΠΎΠ΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ изпълними Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ (Native AOT), Π² ΠΊΠΎΠΈΡ‚ΠΎ цСлият ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½ Π² машинСн ΠΊΠΎΠ΄ Π½Π° Ρ†Π΅Π»Π΅Π²Π°Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π±Π΅Π· ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π΅Π½ ΠΊΠΎΠ΄ ΠΈ Π±Π΅Π· ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° JIT.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster