Алексей Батурин
81
Блоги

Microsoft обновили .NET Standard до версии 2.1

Разработчики Microsoft обновили .NET Standard до версии 2.1, добавив в него ряд улучшений и большое количество API. .NET Standard — это набор спецификаций общих интерфейсов для платформ .NET Framework, .NET Core, Mono, Xamarin и других. Библиотека, удовлетворяющая спецификациям .NET Standard, может использоваться на остальных платформах .NET.

Поделиться

В избранное

В избранном

Главные изменения

Основные новшества в .NET Standard 2.1:

Добавлена поддержка типа данных Span для всех платформ. Span позволяет работать со строками, массивами и другими типами данных, а также вводит абстракцию доступа к некоторому участку памяти как на чтение, так и на запись. Это позволит упростить разработку. Вообще, Span лежит в основе большинства улучшений, касающихся производительности в .NET Core 2.1. Подробнее об этом можноузнатьв GitHub.Foundational-API — обновление стандарта, касающееся производительности. Оно, в отличие от Span, расширяет список именно программных интерфейсов, а не типов данных.Обновлён тип ValueTask для высоконагруженных сценариев. ValueTask возвращает результат, если операция выполнена синхронно без создания новой задачи, что отражается на общей производительности ПО. Использование ValueTask позволяет минимизировать накладные расходы на ПК или сервер. Сам тип появился в .NET Core 2.1, а в новой версии он дополнительно использует такие типы, какSocketиNetworkStream.Reflection emit добавляет технологию генерации типов на лету. Отдельно она уже использовалась, но теперь её включили в стандарт. Экосистема .NET обычно активно использует динамические функции, поэтому Reflection emit позволяет оптимизировать производительность системы.Ранее используемый API SIMD теперь внесён в .NET Standard в пакет NuGet.Появился примитив DbProviderFactories. Он облегчает библиотекам и приложениям использование технологии ADO.NET. Зарегистрированный экземпляр DbProviderFactory выбирается по имени из параметров конфигурации базы данных.Добавлены функцииSystem.HashCodeиSystem.Stringв библиотеки базовых классов.

В .NET Standard 2.1 планируется добавить около 3 тысяч API, часть которых будут просто обновлены, а другие полностью новыми. Это решит проблему совместного использования кода для разработчиков .NET на всех платформах.

Использование .NET Standard 2.1

Новую версию стандарта не планируют использовать в .NET Framework 4.8, который продолжит работать на версии 2.0. А вот .NET Core 3.0, Xamarin, Mono и Unity обновят до версии 2.1. При этом обновление всех библиотек не планируется, во всяком случае сейчас.

В июне 2018 года Microsoft представила .NET Core 2.1 с поддержкой Alpine Linux версии 3.7 и выше, а также чипов ARM32. А в августе 2018 года компания обновила Windows Community Toolkit до версии 4.0. Одним из нововведений стал перевод Twitter, LinkedIn, Microsoft Translator и других веб-сервисов на пакеты .NET Standard.

{ "author_name": "Алексей Батурин", "author_type": "self", "tags": [], "comments": 5, "likes": -11, "favorites": 0, "is_advertisement": false, "section_name": "blog", "id": "79564", "is_wide": "" }
Популярные материалы
Показать еще
{ "is_needs_advanced_access": true }

Популярные комментарии

Дискуссии по теме
доступны только владельцам клубного аккаунта

Купить за 75₽
Авторизоваться

Преимущества
клубного аккаунта

  • отсутствие рекламы
  • возможность писать комментарии и статьи
  • общение с членами клуба
Подробнее

Преимущества
клубного аккаунта

  • отсутствие рекламы
  • возможность читать и писать комментарии
  • общение с членами клуба
  • возможность создавать записи

Сколько это стоит?

Членство в клубе стоит всего 75₽ в месяц. Или даже дешевле при оплате за год.

Что такое клуб?

Клуб ТЖ это сообщество единомышленников. Мы любим читать новости, любим писать статьи, любим общаться друг с другом.

Вступить в клуб

Комментарии Комм.

Популярные

По порядку

0

Прямой эфир

Вы не против подписаться на важные новости от TJ?

Нет, не против
[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "i", "ps": "cndo", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "i", "ps": "cndo", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "ezfk" } } }, { "id": 6, "disable": true, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byswn", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "cndo", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223677-0", "render_to": "inpage_VI-223677-0-130073047", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=cndo&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudv", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "cndo", "p2": "fzvc" } } } ]