Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 28789|Odgovoriti: 0

[Vir] Razlika med .NET Core in .NET Standard

[Kopiraj povezavo]
Objavljeno na 12. 11. 2019 10:25:55 | | | |
.NET Standard je formalna množica.NET API specifikacija, ki naj bi bila na voljo v vseh .NET implementacijah. Motivacija za uvedbo .NET standarda je bila izboljšanje doslednosti v .NET ekosistemu. ECMA 335 še naprej vzpostavlja enotnost za obnašanje implementacij .NET, vendar ni podobne specifikacije za .NET Base Class Libraries (BCL) za implementacije .NET knjižnic.

.NET Standard omogoča naslednje ključne scenarije:

  • Definirajte enoten, delovno neodvisen nabor BCL API-jev za vse .NET implementacije, ki jih želite implementirati.
  • Razvijalcem omogoča gradnjo prenosnih knjižnic, ki jih je mogoče uporabljati v različnih .NET implementacijah prek istega nabora API-jev.
  • Zmanjša ali celo odpravi pogojno prevajanje skupne izvorne kode za vidike .NET API-jev (samo OS API-ji).


Različne .NET implementacije ciljajo na določeno različico .NET Standarda. Vsaka .NET implementacija objavlja najvišjo različico .NET standarda, ki jo podpira, kar pomeni, da podpira tudi prejšnje različice. Na primer, .NET Framework 4.6 implementira .NET Standard 1.3. To pomeni, da razkriva vse API-je, definirane v .NET Standard različicah od 1.0 do 1.3. Podobno .NET Framework 4.6.1 implementira .NET Standard 1.4, medtem ko .NET Core 1.0 implementira .NET Standard 1.6.




Razmerje med implementacijami .NET Standard in .NET je enako kot odnos med HTML specifikacijami in brskalniki. Druga je uresničitev prvega.

Zato .NET Framework, Xamarin in .NET Core, vsak upravljani ogrodje, implementira . NET Standard. Ker računalniška industrija še naprej uvaja novo strojno opremo in operacijske sisteme, se bodo v prihodnosti pojavili tudi novi. .NET Hosting Framework. Standard razvijalcem aplikacij omogoča, da vedo, da se lahko zanesejo na dosleden nabor API-jev.

Vsak. .NET različice ustrezajo .NET standardni različici.

API je dosleden, prenos aplikacij na različne upravljane implementacije in zagotavljanje orodij bo enostavnejši.

.NET Standard je definiran kot ločen paket NuGet, ker so vsi . Podprte je treba .NET implementacije


.NET Standard proti prenosnim knjižnicam

Ali prenosna knjižnica ne počne enako?

Prenosni razredi uporabljajo skupne API-je, ki jih podpira več platform. Zaradi tega je več kot je platform, manj je na voljo API-jev, in za določeno kombinacijo platform je lahko težko natančno vedeti, kateri API-ji so podprti. Za novo platformo je treba obstoječi PCL ponovno prevesti. PCL prav tako zahteva, da Microsoft ustvari novo vejo za implementacijo ogrodja za vsako platformo.
Zaradi. NET Standard identificira API, ne implementacijo, zato ni potrebe po ponovnem prevajanju aplikacije. Vsak na novo izdan . .NET implementacije implementirajo potrebne knjižnice. Aplikacij ni treba ponovno prevesti za delovanje na novih strojnih platformah ali operacijskih sistemih. Teoretično bi lahko bila izjema NotSupportedException zaznana pri klicu API-ja, vendar bi to moralo biti redko.


Podpora za implementacijo .NET

Naslednja tabela navaja minimalne različice platform, ki podpirajo vsako izdajo .NET standarda. To pomeni, da kasnejše različice navedenih platform podpirajo tudi ustrezne različice .NET Standard. Na primer, .NET Core 2.2 podpira .NET Standard 2.0 in starejše.








Prejšnji:Vodnik za Linux Shell skriptiranje (3. izdaja)
Naslednji:ASP.NET Obnovitev Nuget v Core 3.0 ni uspela
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com