Представляем .Net 5, Предварительная Версия 1

В конце прошлого года мы выпустили .

NET Core 3.0 и 3.1. В эти версии добавлены модели настольных приложений Windows Forms (WinForms) и WPF, ASP.NET Blazor для создания одностраничных приложений и gRPC для межплатформенного обмена сообщениями на основе контрактов.

Также мы добавили шаблоны для создания сервисов, классную генерацию клиентского кода для взаимодействия с gRPC, сервисы REST API и многое другое.

Мы очень рады тому, что .

NET Core 3 стала самой быстро внедряемой версией .

NET, и за последний год к нам присоединился еще миллион пользователей.

Мы также работали в этих выпусках, чтобы завершить миграцию моделей приложений из .

NET Framework. В .

NET Core 3 мы портировали все наиболее используемые модели приложений, а также представили новые кроссплатформенные фреймворки взамен непортированных.

В ожидании следующего основного выпуска .

NET 5 мы продолжим объединять .

NET в единую платформу, включив в .

NET 5 нашу модель мобильных приложений .

NET (Xamarin).

.

NET 5 будет включать ASP.NET Core, Entity. Framework Core, WinForms, WPF, Xamarin и ML.NET. Впервые вся платформа будет использовать единую BCL (библиотеки базовых классов) для всех моделей приложений.

Наличие версии 5, которая выше, чем .

NET Core и .

NET Framework, также дает понять, что .

NET 5 — это будущее .

NET, единой унифицированной платформы для создания приложений любого типа.

Мы говорили это много раз, но скажем еще раз; .

NET Core, а затем .

NET 5 — это .

NET, которую вам следует использовать для создания всех ваших новых приложений.

.

NET Framework будет поддерживаться до тех пор, пока поддерживается сама Windows. Мы продолжим обеспечивать безопасность и исправлять ошибки, а также обновлять сетевые и криптографические API. Он останется безопасным и будет поддерживаться для запуска устаревших приложений .

NET Framework.

Представляем .
</p><p>
NET 5, предварительная версия 1



Установка .

NET 5.0 (предварительная версия 1)

Сегодня мы выпускаем первую предварительную версию .

NET 5, полную версию которой планируется выпустить позднее в ноябре этого года.

Читать Обновления ASP.NET Core в .

NET 5 Preview 1 чтобы узнать о сегодняшнем выпуске ASP.NET Core. Предварительная версия 1 впервые включает поддержку Windows ARM64. Сегодняшний выпуск также включает среду выполнения .

NET Core. Мы ожидаем, что в Preview 2 будет добавлен SDK (ядро ASP.NET, но не WPF или Windows Forms).

Более поздняя предварительная версия будет включать WPF и Windows Forms. Поддержка Windows ARM64 также будет перенесена в .

NET Core 3.1. Более подробную информацию об этом мы поделимся в посте Preview 2.

Обновление существующих проектов

Вы можете обновить существующие проекты, обновив целевую платформу следующим образом:

<TargetFramework>netcoreapp5.0</TargetFramework>



5 главных целей .

NET

  • Опыт использования унифицированного .

    NET SDK:

    • Одна BCL (библиотека базовых классов) для всех приложений .

      NET 5. Сегодня приложения Xamarin используют Mono BCL, но будут перенесены на использование .

      NET Core BCL, что улучшит совместимость между нашими моделями приложений.

    • Разработка мобильных приложений (Xamarin) интегрирована в .

      NET 5. Это означает, что пакет SDK для .

      NET будет поддерживать мобильные устройства.

      Например, вы можете использовать «dotnet new XamarinForms» для создания мобильного приложения.

  • Собственные приложения, поддерживающие несколько платформ.

    Проект «Одно устройство» поддерживает приложение, которое может работать на нескольких устройствах, таких как Window Desktop, Microsoft Duo (Android) и iOS, с использованием встроенных элементов управления, поддерживаемых на этих платформах.

  • Веб-приложения, поддерживающие несколько платформ: один проект Blazor, поддерживающий приложение, которое может работать в браузерах, на мобильных устройствах и как собственное настольное приложение (например, Windows 10x).

  • Облачные приложения: высокопроизводительные микросервисы с одним файлом (.

    exe).

    <50 MB and support for creating multiple projects (APIs, web interfaces, containers) both on-premises and in the cloud.

  • Постоянные улучшения, такие как: более быстрые алгоритмы в BCL, улучшения поддержки среды выполнения контейнеров, поддержка HTTP3.
Предварительная версия 1 еще не содержит результатов по всем этим целям, но мы продолжим анонсировать новые функции в будущих предварительных версиях.



Улучшения в предварительной версии 1

Следующие улучшения в предварительной версии 1:

Улучшения производительности регулярных выражений

Мы вложили значительные средства в движок Regex. Во многих протестированных нами выражениях эти улучшения обычно приводят к повышению производительности в 3–6 раз, а в некоторых случаях и намного больше.

Скоро в блоге появится сообщение, в котором эти улучшения будут описаны более подробно.



Улучшение качества кода в RyuJIT

Каждый выпуск включает набор улучшений производительности кода, генерирующего JIT. Мы называем этот тип улучшения «CQ» или качеством кода.

В большинстве случаев эти улучшения также применяются к коду, созданному для готовых к запуску образов.



Диагностика нагрузки сборки добавлена в канал событий.

Мы добавили информацию о загрузке сборки в канал событий.

Это улучшение знаменует начало доступности аналогичных диагностических функций, которые являются частью .

NET Framework с Средство просмотра журнала Fusion .

Теперь вы можете использовать DotNet-трассировка собрать эту информацию с помощью следующей команды:

dotnet-trace collect --providers Microsoft-Windows-DotNETRuntime:4:4 --process-id [process ID]

Порядок работы описан в разделе Трассировка загрузки сборки с помощью канала событий .

Вы можете просмотреть информацию о загрузке сборки для простого тестового приложения.



Представляем .
</p><p>
NET 5, предварительная версия 1



API профилирования событий (канал событий)

Event Pipe — это новая подсистема и API, которые мы добавили в .

NET Core 2.2, чтобы обеспечить возможность запуска производительности и другой диагностики в любой операционной системе.

В .

NET 5.0 канал событий был расширен, чтобы позволить профилировщикам записывать события канала событий.

Этот сценарий важен для инструментов профилирования, которые ранее использовали ETW для мониторинга поведения и производительности приложений.



Объединение репозиториев GitHub

В рамках выпуска .

NET 5 мы уменьшено количество репозиториев на GitHub , которые использовались для создания и упаковки .

NET. Границы репозитория оказывают существенное влияние на многие аспекты проекта, включая управление сборкой и проблемами.

В .

NET Core 1.0 у нас было более 100 репозиториев в ASP.NET, EF и .

NET Core. Теперь все изменилось.

Мы также переместили почти все репозитории в dotnet org. Ознакомьтесь с новыми консолидированными репозиториями:

Теги: #microsoft #программирование #C++ #.

NET #.

net 5

Вместе с данным постом часто просматривают: