Microsoft je objavil odprto platformo .NET 7

Microsoft je predstavil pomembno izdajo odprte platforme .NET 7, ki je nastala z združevanjem produktov .NET Framework, .NET Core in Mono. Na osnovi .NET 7 je mogoče razvijati večplatformske aplikacije za brskalnike, oblačne sisteme, namizne računalnike, IoT naprave in mobilne platforme, pri čemer se uporabljajo enotne knjižnice in skupni postopek gradnje, neodvisen od vrste aplikacije. Gradnje .NET SDK 7, .NET Runtime 7 in ASP.NET Core Runtime 7 so oblikovane za Linux, macOS in Windows. .NET Desktop Runtime 6 pa je na voljo le za Windows. Z dodatki k projektu se upravlja pod licenco MIT. Vzporedno s tem bo podpora za vejo .NET 7 trajala 18 mesecev do 14. maja 2024.

.NET 7 vključuje runtime CoreCLR z JIT-kompilatorjem RyuJIT, standardne knjižnice, knjižnice CoreFX, WPF, Windows Forms, WinUI, Entity Framework, ukazno vrstico dotnet, ter orodja za razvoj mikrostoritev, knjižnic, strežniških, grafičnih in konzolnih aplikacij. Ločeno je objavljena tudi infrastruktura za razvoj spletnih aplikacij ASP.NET Core 7.0, ORM plast Entity Framework Core 7.0 (vozniki so na voljo tudi za SQLite in PostgreSQL), knjižnica WPF 7 (Windows Presentation Foundation), okvir Windows Forms 7 za razvoj GUI, platforma Orleans 7 za ustvarjanje Cloud Native aplikacij, okvir MAUI 7 za razvoj večplatformskih uporabniških vmesnikov ter različice jezikov C# 11 in F# 7. Podpora .NET 7.0 in C# 11 je vključena v brezplačni urejevalnik kode Visual Studio Code.

Karakteristike novog izdanja:

  • Izvedena je bila unifikacija osnovne knjižnice razredov (BCL, Base Class Library) za uporabo v različnih vrstah aplikacij, vključno s programi za namizne računalnike, spletnimi aplikacijami, oblačnimi platformami, mobilnimi aplikacijami, igrami, vgrajenimi programi in sistemi strojnega učenja. Za razvoj različnih vrst aplikacij lahko uporabite enoten SDK, Runtime in sklop knjižnic.
  • Omogočeno je vezanje aplikacije na API, ki ustreza različici .NET 7, preko opredelitve ciljne platforme „net7.0“, na primer „net7.0“. Za vezavo na platform-specifične API-je lahko ob opredelitvi cilja podrobneje opredelite vrsto platforme, na primer „net7.0-android“.
  • Znatno je poboljšana podrška za ARM64 arhitekturu i nastavljen je rad na postizanju pariteta u performansama .NET aplikacija pri izvršavanju na x86 i ARM64 arhitekturama. U runtime-u je povećana efikasnost korišćenja treće nivoa keša na ARM64 sistemima. Iskorišćene su LSE instrukcije za razdvajanje pristupa memoriji iz paralelnih niti, što je dovelo do smanjenja latencije za 45%. U biblioteci su dodani rukovaoci koji koriste vektorske tipove Vector64, Vector128 i Vector256, a funkcije EncodeToUtf8 i DecodeFromUtf8 su prepisane na osnovu vektorskih instrukcija, što je obezbedilo povećanje performansi do 60% (za funkcije NarrowUtf16ToAscii i GetIndexOfFirstNonAsciiChar povećanje performansi dostiže 35%). U celini, brzina testiranja na ARM64 platformi je porasla za 10-60%.
    Microsoft je objavil odprto platformo .NET 7
  • Poboljšana podrška za Linux platformu, uključujući dodavanje paketa sa .NET 6 u zvanične repozitorijume Ubuntu 22.04, kao i optimizovan, kompaktan i spreman za korišćenje docker-image za brzu implementaciju kontejnera sa .NET aplikacijama.
  • Dodata podrška za 64-bitnu IBM Power arhitekturu (ppc64le).
  • Predložen je .NET Upgrade Assistant alat za pojednostavljenje migracije starih aplikacija na .NET 6 ili .NET 7 grane. U novoj verziji proširena je podrška za migraciju aplikacija sa ASP.NET na ASP.NET Core, dodati su analizatori i ispravljači koda za WinForms, WPF i biblioteke klasa, implementirana je podrška za analizu izvršnih datoteka, kao i podrška za UWP (Universal Windows Platform).
  • Proširene su mogućnosti za razvoj aplikacija za cloud-native sisteme i PaaS platforme (platforma kao usluga). Omogućeno je kreiranje aplikacija upakovanih u izolovane kontejnere putem komande „dotnet publish“.
  • Proširena su sredstva za praćenje stanja aplikacija i prikupljanje metrika o njihovom radu. Dodani su novi događaji i metode za analizu aktivnosti i performansi aplikacije.
  • V jeziku C# 11 je bila dodana podpora za neobdelane nizovne literale, ki lahko vključujejo posebne znake brez potrebe po njihovi zaščiti (takšni literali so označeni s tremi narekovaji). Predlagani so splošni vmesniki (generic) za matematične funkcije in omogočeno je določanje statičnih elementov v virtualnih vmesnikih, kar omogoča uporabo metod splošnega programiranja za izvajanje matematičnih operacij brez natančnih informacij o tipu vrednosti.
  • Razširjene so možnosti standardne knjižnice. Dodan je API System.Formats.Tar za delo z arhivi v formatu Tar. V funkcijah za delo s časom (TimeStamp, DateTime itd.) je dodana podpora za mikrosekunde in nanosekunde. V System.Text.Json je bila implementirana možnost upravljanja s serializacijo in deserializacijo tipov .NET.
  • V ukazni vrstici 'dotnet new' je bila dodana podpora za samodopolnjevanje predlog tipičnih projektov s pritiskom na tipko Tab.
  • V .NET SDK je bila uvedena možnost omejevanja uporabe priloženih predlog projektov, na primer, lahko se določi, v katerih operacijskih sistemih je predloga dovoljena.
  • V NuGet je dodan način centraliziranega upravljanja paketov, ki omogoča upravljanje odvisnosti hkrati za več projektov.
  • Povečana je učinkovitost JIT-kompilatorja. Dodana je podpora za mehanizem OSR (On Stack Replacement) za spreminjanje kod obstoječih metod, kar omogoča optimizacije za metode, katerih izvajanje traja dolgo, brez čakanja na zaključek trenutnega klica (v testu TechEmpower je zaznano povečanje učinkovitosti obdelave prvih zahtevkov za 10-30%).
  • Povečana je učinkovitost optimizacije, ki temelji na rezultatih profiliranja kode (PGO — Profile-guided optimization), kar omogoča upoštevanje značilnosti, določenih med izvajanjem programa.
  • Dodana je podpora za prevajanje v samostojne izvršljive datoteke (Native AOT), v katerih so vsi projekti prvotno prevedeni v strojno kodo ciljne platforme brez uporabe vmesne kode in brez uporabe JIT.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster