Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 28789|Відповідь: 0

[Джерело] Різниця між .NET Core і .NET Standard

[Копіювати посилання]
Опубліковано 12.11.2019 10:25:55 | | | |
.NET Standard — це формальна множинаСпецифікація .NET API, очікується, що буде доступна у всіх реалізаціях .NET. Мотивацією впровадження .NET Standard було покращення послідовності в екосистемі .NET. ECMA 335 продовжує встановлювати уніфікацію поведінки реалізації .NET, але подібної специфікації для бібліотек базових класів .NET (BCL) для реалізацій .NET бібліотек немає.

.NET Standard дозволяє виконувати такі ключові сценарії:

  • Визначте єдиний, незалежний від навантаження набір BCL API для всіх реалізацій .NET, які ви хочете реалізувати.
  • Дозволяє розробникам створювати портативні бібліотеки, які можна використовувати в різних реалізаціях .NET через один і той самий набір API.
  • Зменшує або навіть усуває умовну компіляцію спільного вихідного коду для аспектів .NET API (лише API ОС).


Різні реалізації .NET орієнтовані на конкретну версію .NET Standard. Кожна реалізація .NET оголошує найвищу версію стандарту .NET, яку вона підтримує, що означає, що вона також підтримує попередні версії. Наприклад, .NET Framework 4.6 реалізує .NET Standard 1.3. Тобто він відкриває всі API, визначені у версіях .NET Standard 1.0–1.3. Аналогічно, .NET Framework 4.6.1 реалізує .NET Standard 1.4, тоді як .NET Core 1.0 реалізує .NET Standard 1.6.




Взаємозв'язок між реалізаціями .NET Standard і .NET такий самий, як і між HTML-специфікаціями та браузерами. Останнє — це реалізація першого.

Отже, .NET Framework, Xamarin, і .NET Core, кожен із керованих фреймворків, реалізує . NET Standard. Оскільки комп'ютерна індустрія продовжує впроваджувати нове апаратне забезпечення та операційні системи, нові з'являться в майбутньому. Фреймворк хостингу .NET. Стандарт дає розробникам додатків знати, що вони можуть покладатися на послідовний набір API.

Кожен. Версії .NET відповідають версії .NET Standard.

API є послідовним, і портування додатків у різні керовані реалізації та надання інструментів буде простішим.

.NET Standard визначається як окремий пакет NuGet, оскільки всі . Мають бути підтримувані реалізації .NET


.NET Standard проти портативних бібліотек

Хіба портативна бібліотека не робить те саме?

Портативні класи використовують поширені API, які підтримуються кількома платформами. Відповідно, чим більше платформ підтримується, тим менше доступних API, і для певної комбінації платформ буває складно точно визначити, які API підтримуються. Для нової платформи існуючий PCL має бути перекомпільований. PCL також вимагає від Microsoft створити новий форк реалізації фреймворку для кожної платформи.
Через це. NET Standard ідентифікує API, а не реалізацію, тому немає потреби перекомпілювати застосунок. Будь-який щойно звільнений. Реалізації .NET реалізують необхідні бібліотеки. Додатки не потребують перекомпілювання для роботи на нових апаратних платформах або операційних системах. Теоретично, виключення NotSupportedException може бути виявлене при виклику API, але це має бути рідкістю.


Підтримка реалізації .NET

У наступній таблиці наведено мінімальні версії платформи, які підтримують кожен реліз .NET Standard. Це означає, що пізніші версії перелічених платформ також підтримують відповідні версії .NET Standard. Наприклад, .NET Core 2.2 підтримує .NET Standard 2.0 і раніше версії.








Попередній:Посібник з скриптування оболонки Linux (3-тє видання)
Наступний:ASP.NET Відновлення Nuget Core 3.0 не вдалося
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com