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

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

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

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

  • ВнСсСни са Π½Π°Π΄ хиляда ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с оптимизация Π½Π° производитСлността ΠΈ повишаванС Π½Π° качСството Π½Π° гСнСрирания ΠΊΠΎΠ΄. Актуализиран Π΅ ΡΠ±ΠΎΡ€Π½ΠΈΠΊΡŠΡ‚ Π·Π° чистСнС Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚, Π² ΠΊΠΎΠΉΡ‚ΠΎ Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ ΠΈ задСйстващ сС ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Π·Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½Π° адаптация спрямо Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ (ΡΠ±ΠΎΡ€Π½ΠΈΠΊΡŠΡ‚ Π·Π° чистСнС Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ Π΅ ΠΎΠ±Π²ΡŠΡ€Π·Π°Π½ Π½Π΅ с наличността Π½Π° рСсурси Π² систСмата, Π° с Ρ‚ΠΎΠ²Π°, ΠΊΠΎΠ»ΠΊΠΎ ΠΏΠ°ΠΌΠ΅Ρ‚ сС изисква ΠΎΡ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ). Новият Ρ€Π΅ΠΆΠΈΠΌ позволява ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° СфСктивността Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° систСми с голям Π±Ρ€ΠΎΠΉ процСсорни ядра, Π°ΠΊΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° сравнитСлно ΠΌΠ°Π»ΠΊΠΎ ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈΠ»ΠΈ Π°ΠΊΠΎ Π½ΡƒΠΆΠ΄ΠΈΡ‚Π΅ ΠΎΡ‚ ΠΏΠ°ΠΌΠ΅Ρ‚ сС промСнят Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°.

    Π’ JIT ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π° са Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Π½ΠΎΠ²ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ, основани Π½Π° ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€Π°Π½Π΅ (PGO), ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΡŠΡ‚ Π½Π° Ρ†ΠΈΠΊΠ»ΠΈ, inline Ρ€Π°Π·Π³Ρ€ΡŠΡ‰Π°Π½Π΅ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° Π³Ρ€Π°Π½ΠΈΡ†ΠΈ. Π’ .NET runtime Π΅ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΠΈ инструкции ΠΈ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ Arm64 SVE ΠΈ Intel AVX10. ΠšΠΎΠ΄ΡŠΡ‚ Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΅ ускорСн с 50%. Π—Π° ΠΊΠΎΠ΄ с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π°Π½Π΅ Π½Π° Ρ‚ΠΈΠΏΠΎΠ²Π΅, ΠΊΠ°Ρ‚ΠΎ β€ž(IFoo)myFooβ€œ ΠΈ β€žmyFoo is IFooβ€œ, Π΅ наблюдавано ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° производитСлността Π΄ΠΎ 70%. ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π² Π΅Π·ΠΈΠΊΠ° Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° заявки LINQ (Language-Integrated Query), ΠΊΠ°Ρ‚ΠΎ Take ΠΈ DefaultIfEmpty, Π΅ нараснала Π΄ΠΎ 10 ΠΏΡŠΡ‚ΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΡ€Π°Π·Π½ΠΈ масиви ΠΈ ΠΊΠΎΠ»Π΅ΠΊΡ†ΠΈΠΈ.

    ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚Ρ‚Π° ΠΈ СфСктивността Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° System.Text.Json Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ повишСна. Π’ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° JsonProperty.WriteTo Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ записванС Π½Π° UTF8 Π½ΠΈΠ·ΠΎΠ²Π΅, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° ΠΈΠ·Π»ΠΈΡˆΠ½ΠΎΡ‚ΠΎ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅ ΠΏΠΎ промСнянС Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° JsonObject са ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½ΠΈ. ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° тСстовС TechEmpower, ΠΊΠΎΠΈΡ‚ΠΎ оцСняват производитСлността Π½Π° ΠΊΠΎΠ΄Π° Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° JSON запитвания, Π² сравнСниС с .NET 8, Π΅ наблюдавано ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° продуктивността с 15% ΠΈ намаляванС Π½Π° консумацията Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚ с 93%.

  • Π’ Runtime Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° Π½ΠΎΠ²Π° ΠΌΠΎΠ΄Π΅Π» Π½Π° Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΈ Π·Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° функционалността Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅.
  • Π’ Π΅Π·ΠΈΠΊΠ° C# 13 Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° β€žparamsβ€œ са Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ, ΠΊΠ°Ρ‚ΠΎ освСн масиви Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΡƒΠΊΠ°Π·Π²Π°Π½Π΅Ρ‚ΠΎ ΠΈ Π½Π° ΠΊΠΎΠ»Π΅ΠΊΡ†ΠΈΠΈ. ΠŸΡ€ΠΈ инициализация Π½Π° масиви Π² стойността Π½Π° индСкса Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° β€ž^β€œ Π·Π° ΠΎΡ‚Ρ‡ΠΈΡ‚Π°Π½Π΅ Π½Π° индСкса ΠΎΡ‚ края Π½Π° масива (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, β€žbuffer = { [^1] = 0, [^2] = 1,….}β€œ Ρ‰Π΅ запишС 0 Π² послСдния Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΈ 1 Π² прСдпослСдния). Π’ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ ΠΈ асинхроннитС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΈΠ·Ρ€Π°Π·ΠΈ ref ΠΈ unsafe. Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π½ΠΎΠ²Π° escape послСдоватСлност β€ž\eβ€œ. Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ Π΅ опрСдСлянСто Π½Π° интСрфСйси Π·Π° Ρ‚ΠΈΠΏΠΎΠ²Π΅ β€žref structβ€œ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚ΠΈΠΏΠΎΠ²Π΅ β€žref structβ€œ ΠΊΠ°Ρ‚ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈ Π² ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Π΅ Π½ΠΎΠ² Ρ‚ΠΈΠΏ Lock Π·Π° инсталиранС Π½Π° Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΈ прилоТСния. Lock myLock = new(); void Concat<T>(params List<T> items) { lock (myLock) Console.WriteLine(string.Join(β€ž\e[1mItem: \e[0mβ€œ, items)); }
  • Π’ Π΅Π·ΠΈΠΊΠ° F# 9 сС появи ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Ρ‚ΠΈΠΏΠΎΠ²Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ°Ρ‚ стойност null. Π’ обСдинСнията са Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½ΠΈ свойства β€ž.Is*β€œ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, person.contact.IsEmail), ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° принадлСТността Π½Π° стойността към мноТСство. Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΏΡ€Π°Π·Π½ΠΈ изчисляСми ΠΈΠ·Ρ€Π°Π·ΠΈ (β€žlet xs = seq { }β€œ). Π’ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΈΡ‚Π΅, Π·Π°ΠΏΠΎΡ‡Π²Π°Ρ‰ΠΈ с символа β€ž#β€œ, Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΡƒΠΊΠ°Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° нСстрингови стойности (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ΅ Π΄Π° сС напишС #nowarn 0070 вмСсто #nowarn β€ž0070β€œ). Π’ ΠΌΠΎΠ΄ΡƒΠ»ΠΈΡ‚Π΅ List, Array ΠΈ Seq са Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° случайно ΠΈΠ·Π±ΠΈΡ€Π°Π½Π΅ ΠΈΠ»ΠΈ Ρ€Π°Π·Π±ΡŠΡ€ΠΊΠ²Π°Π½Π΅ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ. На ΡΠΏΠΈΡΡŠΡ†ΠΈΡ‚Π΅ (list ΠΈ set) Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΊΠΎΠ»Π΅ΠΊΡ†ΠΈΠΈ.
  • Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ са Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π½Π° стСка .NET Aspire, прСдоставящ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π·Π° създаванС Π½Π° прилоТСния, изпълнявани Π² ΠΎΠ±Π»Π°Ρ‡Π½ΠΈ срСди. Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° рСсурситС ΠΈ ТизнСния Ρ†ΠΈΠΊΡŠΠ» Π½Π° прилоТСнията. Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ са срСдствата Π·Π° ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅ Π½Π° тСлСмСтрия.
  • ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Π΅ Π½ΠΎΠ² Π½Π°Π±ΠΎΡ€ абстракции C# Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° AI-прилоТСния, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Π΅Π·ΠΈΠΊΠΎΠ²ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ към Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° ΠΈ взаимодСйствиС с AI-сСрвизи. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² Ρ‚ΠΈΠΏ β€žTensorβ€œ ΠΈ колСкция ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° изчислСния ΠΈ манипулация с ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½ΠΈ Π΄Π°Π½Π½ΠΈ. Π”ΠΎΠΏΡŠΠ»Π½Π΅Π½ΠΈΡΡ‚Π° Π·Π° AI сС разпространяват ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ System.Numerics.Tensors, Microsoft.Extensions.AI ΠΈ Microsoft.Extensions.VectorData. ОбновСн Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΡŠΡ‚ ML.NET, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ Π·Π° интСграция Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π² прилоТСния. Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Microsoft.ML.Tokenizers Π·Π° ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅ Π½Π° тСкст Π² Ρ‚ΠΎΠΊΠ΅Π½ΠΈ.
  • Π’ стСка Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΡƒΠ΅Π±-прилоТСния ASP.NET Core Π΅ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½Π° компилация (ahead-of-time), Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ са Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈ трасировка, Π½Π°ΠΌΠ°Π»Π΅Π½ΠΎ Π΅ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° стартиранС ΠΈ Π΅ Π½Π°ΠΌΠ°Π»Π΅Π½ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½Π° Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° със статични Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅. Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² API Π·Π° удостовСряванС ΠΈ авторизация. Π’ Blazor, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π·Π° създаванС Π½Π° ΡƒΠ΅Π±-прилоТСния Π½Π° Π΅Π·ΠΈΠΊΠ° C#, са Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ Π½ΠΎΠ²ΠΈ шаблони Π·Π° Ρ…ΠΈΠ±Ρ€ΠΈΠ΄Π½ΠΈ ΠΈ ΡƒΠ΅Π±-прилоТСния.
  • Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ са Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π½Π° Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° MAUI Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½ΠΈ интСрфСйси Π½Π° потрСбитСля. Π˜Π·Π²ΡŠΡ€ΡˆΠ΅Π½Π° Π΅ оптимизация Π½Π° производитСлността. Π£ΠΊΡ€Π΅ΠΏΠ΅Π½Π° Π΅ интСграцията с настолни ΠΈ ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ прилоТСния. Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π½Π° интСрфСйса TitleBar ΠΈ HybridWebView.
  • Π’ WPF (Windows Presentation Foundation) Π΅ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° Ρ‚Π΅ΠΌΠΈ ΠΈ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π°ΠΊΡ†Π΅Π½Ρ‚Π½ΠΈ Ρ†Π²Π΅Ρ‚ΠΎΠ²Π΅.

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

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