Windows 11 — крупнейшее обновление ОС за последние годы. Вот семь главных изменений для разработчиков

От нового магазина приложений до платформы для разработки игр.

Windows 11 — крупнейшее обновление ОС за последние годы. Вот семь главных изменений для разработчиков

Материал подготовлен при поддержке Microsoft

5 октября Microsoft выпустила Windows 11. Система сильно изменилась внешне, но её значительно переработали и внутри: Microsoft сделала ставку на открытость системы для разработчиков всех платформ. Разбираемся, чем Windows 11 будет полезна разработчикам.

Новый и открытый магазин приложений Windows Store

Windows 11 — крупнейшее обновление ОС за последние годы. Вот семь главных изменений для разработчиков

Вместе с новой версией системы Microsoft обновила собственный магазин приложений. Компания переработала дизайн: на главную страницу вынесли коллекции, появились кураторские подборки приложений и виджет магазина в Windows 11. Сам магазин стал открываться и работать на 35% быстрее, чем раньше.

На Windows 10 магазин был ограничен только определёнными приложениями на основе appx- и MSIX-упакованного кода. Теперь Microsoft Store для Windows поддерживает широкий спектр разных типов приложений — от Win32 и .NET до Android-приложений из Amazon Appstore (возможность пока тестируется). Магазин даже начал поддерживать веб-приложения на React Native и Electron, а также WebView2 от Microsoft и PWA (прогрессивных веб-приложений).

Разработчики могут использовать и новые возможности магазина — например, всплывающие окна с предложением установить приложение напрямую из браузера. В Microsoft Store впервые можно размещать другие браузеры, например Yandex и Opera, а также витрины других магазинов приложений — к примеру, Epic Games и Amazon Appstore.

Теперь разработчики могут не платить отчисления Microsoft, а использовать свой платёжный движок: не придётся платить компании 15% с заработка (12% для игр). При этом компания не требует специальным образом адаптировать приложения под магазин. Скоро там появится поддержка Android-игр и приложений в партнёрстве с Amazon. Для этого Microsoft разработала подсистему Windows для Android, которая поддерживает все совместимые с Windows процессоры — AMD, Intel и Qualcomm. Компания работала в сотрудничестве с Intel, чтобы запускать на процессорах приложения под ARM.

Разработка под Windows на архитектуре ARM

Windows 11 — крупнейшее обновление ОС за последние годы. Вот семь главных изменений для разработчиков

Приложения Windows работают на компьютерах с ARM64-процессорами. Архитектура таких чипов заточена под низкое энергопотребление и обеспечивает высокую совместимость приложений — 32-разрядные приложения запускаются без изменений.

Теперь разработчики могут создавать приложения под Windows 11 с полной поддержкой ARM-архитектуры на аппаратном уровне. Для этого в систему добавили новый двоичный интерфейс ARM64EC. С его помощью можно совмещать естественный для ARM код с эмулированным 64-битным кодом в одном процессе или модуле. Разработчики смогут оптимизировать приложение для Windows под ARM, даже если оно полагается на стороннюю 64-битную архитектуру или использует 64-битные плагины.

С ARM64EC разработчики могут начинать с малого и постепенно внедрять поддержку ARM. Они могут определить для себя только ту часть кода, которая сильнее всего выиграет от нативной производительности на ARM, а затем перестроить этот отрезок под ARM64EC. Остальное приложение продолжит работать в режиме 64-битной эмуляции.

Приложения с ARM64EC не получают никаких особых преимуществ — они работают с папкой Program Files и регистром, как другие программы. Код для ARM64EC работает на полной скорости, поэтому разработчики не теряют преимуществ портирования на ARM, но получают возможность писать код одновременно с x86- и x64-битностью.

Возможность использовать 32-битный и 64-битный код для ARM позволяет создавать приложения для Windows 11 без оглядки на 64-битный код вне контроля разработчика. Проекты со сторонними решениями без поддержки ARM могут продолжить работать в 64 битах, а собственный код разработчика — в нативной производительности через ARM64EC. Microsoft сама уже использовала новый интерфейс и выпустит Office для ARM с 64-битным исполнением через ARM64EC и поддержкой сторонних плагинов в режиме эмуляции.

Универсальный набор для разработки под Windows 11

Windows 11 — крупнейшее обновление ОС за последние годы. Вот семь главных изменений для разработчиков

Одно из главных обновлений с выходом Windows 11 — это Windows App SDK. Набор самых последних компонентов и инструментов для разработчиков Windows-приложений — API и средства, позволяющие создавать классические приложения для Windows 10 и более поздних версий и публиковать их в Microsoft Store.

Windows App SDK — новое название для Project Reunion. Пакет инструментов работает с существующим кодом и упрощает основные операции, в то же время добавляя новые возможности системы для десктопных приложений. Например, режим «картинка в картинке».

Для использования пакета SDK в уже существующем проекте достаточно установить последнюю версию NuGet и с его помощью добавить пакет SDK для приложений Windows. При создании нового приложения нужно выбрать его тип, но вне зависимости от него у разработчиков будет доступ к большей части возможностей платформы Windows.

Windows App SDK повлияет на будущие разработки под Windows. Microsoft официально переходит на новое поколение инструментов, окончательно отказываясь от Win32 и WinRT. Windows 11 станет отправной точкой для нового набора SDK и API будущих Windows-разработчиков.

При этом Windows App SDK предназначен не только для Windows 11: десятую версию продолжат поддерживать ещё как минимум несколько лет. Поэтому пакет инструментов будет обратно совместим с Windows 10, чтобы облегчить переход с устаревших Win32 и WinRT.

Библиотека готового дизайна для приложений WinUI 3

Windows 11 — крупнейшее обновление ОС за последние годы. Вот семь главных изменений для разработчиков

Создатели также анонсировали WinUI 3 — это готовая библиотека пользовательского интерфейса для Windows-приложений. Достаточно добавить её поддержку в приложение, чтобы оно получило все обновления дизайна Windows 11, включая скруглённую геометрию, новую иконографию и типографию и цветовую палитру. В WinUI 3 поддерживаются новые «материалы» Acrylic и Mica, макеты окон Snap Layouts, появилось API нового контекстного меню — всё это работает только на Windows 11.

Microsoft параллельно разрабатывает два поколения библиотеки — WinUI 2 и WinUI 3. Разработчики могут использовать каждую версию для готовых к работе приложений Windows 10 и более поздних версий — поколения отличаются задачами, а их новые выпуски выходят в разное время. WinUI поддерживает классические и UWP-приложения, сборку с библиотекой можно выполнять с нуля или постепенно переносить существующие приложения, используя привычные языки — C++, C#, Visual Basic и JavaScript (React Native для Windows).

В WinUI 2.7 также появился InfoBadge — элемент, который можно поместить в любую часть пользовательского интерфейса. Он встроен в NavigationView и позволяет ненавязчиво привлечь внимание пользователя к конкретной области на экране.

Обе версии библиотек позволят обновить существующие приложения под визуальные требования Windows 11. WinUI 3 входит в состав пакета Windows App SDK.

Обновление PWA Builder 3 и поддержка WebView2 на уровне системы для веб-приложений

Windows 11 — крупнейшее обновление ОС за последние годы. Вот семь главных изменений для разработчиков

В Windows 11 усовершенствовали поддержку веб-приложений. По задумке Microsoft, все приложения должны ощущаться максимально естественно, как будто их создали специально под систему. Для этого компания развивает PWA (прогрессивные веб-приложения) — технологию, которая совмещает лучшее от нативных и веб-приложений в одном решении.

Благодаря PWA уже на старте в Microsoft Store доступны приложения популярных сайтов — Pinterest, Facebook, Instagram и Twitter. Технология позволяет привнести опыт нативных приложений за счёт глубокой интеграции с экосистемой Windows с минимальной стоимостью разработки. Например, PWA могут появляться в настройках, меню «Пуск», «Панели задач» и запускаться в своём отдельном окне или играть музыку в фоновом режиме, а также использовать пуш-уведомления.

Ещё одно преимущество PWA — высокая производительность. У прогрессивных веб-приложений есть автономные возможности вроде кеширования, но они работают на той же кодовой базе, что и сайт, — это позволяет обслуживать, обновлять и исправлять ошибки и в веб-приложениях, и в PWA одновременно.

В PWA можно превратить веб-приложения на основе React Native или Electron (например, Slack), а затем разместить в Microsoft Store, которому доверяют миллиард ежемесячно активных пользователей ОС. Microsoft предлагает доступ к бесплатному продвижению, включению в подборки и не только.

Компания обновила инструмент PWABuilder до третьей версии — он позволяет создавать приложения на основе существующего и нового HTML- и JavaScript-контента. Превратить сайт в PWA можно будет за считаные минуты (веб-разработчики могут успеть сделать это за обед), хотя реализация отдельных преимуществ может занять больше времени.

В новом интерфейсе WinUI 3 также предустановили evergreen-версию компонента WebView2. Нововведение упрощает создание эффективных и безопасных гибридных веб-приложений через Microsoft Edge: раньше WebView не был настолько интегрирован в систему.

Теперь разработчики приложений на базе HTML получат все преимущества Chromium — open-source-основы для самых популярных браузеров в мире. Microsoft и сама воспользуется обновлением: следующее крупное обновление Teams выпустят в виде WebView2-приложения вместо версии на Electron, которая потребляет куда больше ресурсов системы.

Обновление Windows Subsystem for Linux 2 и появление в Store

Windows 11 — крупнейшее обновление ОС за последние годы. Вот семь главных изменений для разработчиков

Windows Subsystem for Linux — это подсистема, которая позволяет разработчикам запускать среду GNU/Linux без традиционной виртуальной машины или «двойной загрузки». WSL поддерживает большинство программ командной строки, служебных программ или приложений без дополнительных изменений.

Во второй версии подсистемы Windows для Linux обновили архитектуру. Теперь подсистема может запускать исполняемые файлы Linux ELF64 — это меняет способ их взаимодействия с Windows и с оборудованием компьютера, но не отражается на пользователях.

Главное отличие WSL 2 от первой версии — полнофункциональное ядро Linux с открытым исходным кодом, которое Microsoft собрала и настроила для использования в подсистеме. Компания будет обновлять ядро вместе с Windows, так что разработчикам не придётся заниматься этим самим.

WSL 2 также использует технологию виртуализации, но она работает в фоновом режиме и остаётся управляемой. В отличие обычной виртуальной машины, подсистема Windows для Linux не замедляется при загрузке, не изолируется, не потребляет много ресурсов и не требует времени для настройки.

Команды для работы с большими объёмами файлов вроде git clone, npm instal, apt update и не только выполняются быстрее, чем раньше. Фактический прирост будет зависеть от конкретного приложения и взаимодействия с файловой системой — первые версии WSL 2 работают в 20 раз быстрее WSL 1 при распаковке архива tarball и в 2–5 раз быстрее при команде git clone и npm install.

WSL 2 совместим с системными вызовами — это позволяет исполняемым файлам Linux обращаться к файловой системе, памяти, создавать процессы и не только. Прошлая версия подсистемы использовала команды совместимости, поэтому это было невозможно. За счёт этого стал возможен запуск новых приложений, например одного из самых популярных инструментов для разработчиков Docker.

Платформа для игровой разработки под Windows, которую опубликовали на GitHub

Windows 11 — крупнейшее обновление ОС за последние годы. Вот семь главных изменений для разработчиков

Вместе с Windows 11 выпустили Game Development Kit — набор инструментов для разработчиков, который позволяет создавать игры для ПК. Он состоит из основных инструментов, библиотек и документации для игровой разработки, которые уже используют тысячи инженеров по всему миру.

Раньше GDK были доступны только крупным студиям по разработке. Теперь платформу опубликовали бесплатно на GitHub — любой желающий может использовать те же инструменты, которые применяют команды разработки Xbox Game Studios.

Одна из ключевых доступных в GDK технологий — AMD Fidelity FX Super Resolution. Она использует передовые технологии по увеличению разрешения, чтобы повысить фреймрейт в избранных играх.

Microsoft называет Windows 11 лучшей Windows для игр. Новая версия системы поддерживает технологии, которые раньше были доступны только на консолях, — DirectStorage и AutoHDR. DirectStorage до сих пор была только в Xbox Series X/S: технология позволяет значительно ускорить загрузки и работать с более детализированным окружением в играх. Для этого пользователям понадобится диск NVMe SSD с интерфейсом PCIe 3.0, а также видеокарта с поддержкой DirectX 12 и Shader Model 6.0.

AutoHDR автоматически усовершенствует картинку в играх с поддержкой Direct X 11. Технология добавляет динамический диапазон света и цвета даже в играх без HDR, делая картинку более контрастной и натуральной.

Пользователи также могут играть с поддержкой пространственного аудио, а разработчики — использовать технологии для более погружающего опыта. Microsoft добавила поддержку Dolby Atmos, DTSX и Windows Sonic — разных стандартов объёмного звука — ещё в Windows 10, но технология работает и в новой ОС.

1313
118 комментариев

Всегда хейтил венду за кривой интерфейс, постоянные баги на пустом месте, лагучесть, недружелютность, отсутствие стора.
Смотрел windows 11 - и был приятно удивлен. На первый взгляд кажется, что большинство недочетов было исправлено. Выглядит многообещаеюще, но переходить пока боюсь)

9
Ответить

Это ещё со времён 8 так. Стабильно и четко.

Мак идёт обратным путём при этом. Кучу спотыканий в работе подсовывает.

19
Ответить

1. очень не понравился "склеенный" блок снизу, куда запихнули теперь всё – инфо об интернете, батарее и т.д. – теперь нет возможности сразу вызвать один нужный компонент
2. не нравится в целом история, что на десктопной версии ты видишь местами явные штуки под "планшет" и в целом под сенсорное управление
3. в целом виден явный курс на сближение с macOS в части интерфейса

2
Ответить

Не знаю, я лично особо разницы с виндой 10 не заметил

2
Ответить

Мне кажется, win мигрирует в *nix ?

Плавно решили... пока через совместимость...

5
Ответить

Не думаю. Кабы не Docker, они бы и этого не стали делать.

5
Ответить

Вполне вероятно

Ответить