Компания Microsoft представила первую предварительную версию. NET 6 – следующего поколения платформы для разработки программного обеспечения, в которой будет завершена унификация компонентов. NET, начавшаяся в. NET 5.
В производственном релизе. NET 6, который должен быть выпущен в ноябре, планируются улучшения для облака, настольных и мобильных приложений. Первоначальную версию, которая стала доступна 17 февраля, можно загрузить с сайта dot.net.microsoft.com. Между нынешним и производственным релизом, который будет поддерживаться на протяжении трех лет, предполагается выпустить несколько предварительных версий.
В Microsoft. NET 6 будут интегрированы средства разработки для Android, iOS и MacOS, которые в настоящее время входят в состав мобильной платформы. NET с открытым кодом Xamarin. Кроме того, Microsoft расширяет возможности инструмента для проектирования клиентских веб-приложений Blazor, с тем чтобы разработчики могли создавать гибридные клиентские приложения, объединяющие веб-интерфейс с интерфейсом для настольных и мобильных приложений. Blazor WebAssembly была первой унифицированной платформой и поставлялась в составе. NET 5. После публикации. NET 5 в ноябре 2020 года Microsoft инициировала процесс унификации, сделав акцент на переносе кода и приложений. NET Framework в. NET 5 и формировании для разработчиков Xamarin основы для использования унифицированной платформы. NET после появления версии 6.0.
Унификация. NET позволит связать в единое целое отдельные технологии. NET Core,. NET Framework и Xamarin/Mono. Части. NET Framework уже перемещены в. NET Core. С появлением. NET 5 началось объединение. NET Core и Mono/Xamarin на базе библиотеки классов и имеющегося набора инструментов.
Первая предварительная версия. NET 6 представляет Android и iOS в качестве первых двух платформ, поддерживаемых в Multi-Platform App UI (MAUI) – едином инструментарии для создания пользовательского интерфейса, основанного на Xamarin. В будущие предварительные версии планируется добавить средства поддержки настольных приложений для MacOS и Windows. В инструменте Blazor, функционирующем поверх MAUI, реализован стек пользовательского интерфейса для собственного контейнера приложений и элементов управления собственным контейнером приложений.
При проектировании. NET 6 работы ведутся также в следующих направлениях:
— Чтобы добиться быстрой сборки и ускорения операций по изменению кода, реализовав все это в качестве стандартной функции. NET, Microsoft определяет новую модель горячей перезагрузки кода для всех типов приложений. Закреплением усилий должен стать новый проект, получивший название быстрого внутреннего цикла и предназначенный для ускорения итерационной разработки. Проект предусматривает возможность применения изменений в коде к работающему процессу без его перезапуска, минуя процедуру сборки.
— Применительно к оборудованию архитектуры Arm64,. NET 6 будет ориентироваться на функциональную поддержку. На платформе Windows версия Preview 1 будет поддерживать Windows Forms и Windows Presentation Framework. На Mac добавится поддержка для чипов Apple Silicon (Arm64).
— Предпринимаются серьезные усилия для улучшения контейнеров в. NET 6, в том числе для улучшения масштабирования, уменьшения размера контейнера, ускорения запуска и увеличения пропускной способности.
— Пул потоков. NET реализован в качестве пула управляемых потоков и в. NET 6 является пулом по умолчанию.
— Microsoft намерена увеличить скорость запуска и производительность исполняемой среды. NET 6 за счет использования информации о выполнении там приложений. Это будет осуществляться средствами Profile Guided Optimization (PGO), которые впервые появятся в Preview 1.
— В. NET 6 однофайловые приложения поддерживаются в среде Windows и MacOS. В. NET 5 они поддерживались только в среде Linux.