Microsoft упрощает создание нативных приложений для Windows 11 с помощью WinUI

152 комментарии
Microsoft представила экспериментальный фреймворк Microsoft.UI.Reactor: интерфейс приложений WinUI для Windows 11 можно описывать прямо на C#, без XAML. Простое приложение помещается в один файл, а более 60 встроенных проверок находят проблемы с темной темой и специальными возможностями

В Windows веб-приложения встречаются буквально на каждом шагу: даже стандартное приложение «Погода» использует WebView2 из Edge для фоновой загрузки контента MSN. Microsoft ранее пообещала создавать полностью нативные приложения. Теперь компания упрощает разработку нативных приложений на WinUI – в том числе для разработчиков, которые приходят с других платформ.

Диспетчер задач Windows 11: приложение «Погода» с процессами WebView2 занимает более 1 ГБ оперативной памятиПриложение «Погода» в Windows 11 занимает больше 1 ГБ оперативной памяти. Изображение: Windows Latest

Перевод собственных приложений Microsoft на WinUI решает лишь небольшую часть проблемы, которую компания сама создала, уделяя недостаточно внимания WinUI и отдавая предпочтение решениям на WebView2 вместо старых, исправно работавших API Win32. Помочь исправить ситуацию с нативными приложениями Windows 11 может проект Microsoft.UI.Reactor. При этом заменять WinUI он не должен.

Microsoft.UI.Reactor – экспериментальный фреймворк на C#, который отображает элементы управления WinUI. Это не новая платформа пользовательского интерфейса, и заменять существующие технологии, включая WinUI, он не призван. Такой подход соответствует прежним заявлениям Microsoft. На конференции для разработчиков Build 2026 компания пообещала продолжить развитие WinUI, а Reactor предлагает еще один способ создавать приложения на той же основе.

В компании отметили:

Здесь нет ни нового механизма отрисовки, ни ответвления существующего проекта. Reactor отображает элементы управления и примитивы WinUI.

Проект пока экспериментальный: у него нет политики поддержки и гарантий стабильности API, а синтаксис еще может измениться. Код Reactor открыт и опубликован на GitHub под лицензией MIT.

Привычный подход для разработчиков с других платформ – без отказа от XAML

WinUI – фреймворк для Windows, который обычно связывают с созданием современных приложений, соответствующих рекомендациям по дизайну Windows 11. Как правило, интерфейс таких приложений описывают на XAML, а их поведение задают программным кодом.

Проблема не в самом XAML. Но если разработчик приложений для Android или macOS хочет создать нативное приложение для Windows на WinUI, одних базовых знаний программирования недостаточно. Ему все равно придется разобраться в особенностях разработки под Windows.

По словам Microsoft, Reactor позволяет описывать интерфейс непосредственно на C#. Поэтому разработчики, которые хотят перенести свои мобильные приложения или приложения для macOS на Windows, могут обойтись без XAML. Начать работу с WinUI становится немного проще: предлагаемый подход должен быть знаком тем, кто уже работал со SwiftUI или React Native.

Microsoft пояснила в публикации о проекте:

Если вы создавали интерфейсы с помощью React, React Native, SwiftUI или Jetpack Compose, обычный путь освоения WinUI начинается с изучения языка разметки и механизма привязки данных. Мы хотим выяснить, может ли Reactor избавить от этого этапа.

XAML остается одним из основных способов работы с WinUI. Он не объявлен устаревшим, и мы продолжаем активно вкладываться в его развитие.

Упрощение разработки нативных приложений может побудить разработчиков отказаться от веб-оболочек и решений на Chromium.

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

Простое нативное приложение может поместиться в одном файле

Microsoft привела пример: для ее демонстрационного приложения на XAML нужны пять файлов и файл проекта. С Reactor достаточно одного файла C#.

Впрочем, возможность обойтись без изучения XAML – не единственное преимущество Reactor. Фреймворк также предлагает более 60 встроенных проверок кода, которые помогают выявлять проблемы с поддержкой темной темы, специальных возможностей и даже с производительностью.

По словам Microsoft, эти проверки могут обнаружить «кисть с жестко заданным цветом, которая некорректно работает в темной теме» или «кнопку без текста, которую программа чтения с экрана озвучит просто как кнопка».

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

Приложение WinUI 3 Gallery с примерами элементов управления WinUI в Windows 11WinUI 3 Gallery – приложение с примерами элементов управления WinUI. Изображение: Windows Latest

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

Наконец, использование C# в Reactor должно помочь разработчикам и даже людям без опыта программирования создавать приложения для Windows 11 с помощью ИИ-инструментов: по словам Microsoft, интерфейс на обычном C# ИИ-агентам легко читать, писать и проверять. Распространение приложений на WinUI может повысить производительность, обеспечить нативный интерфейс и более тесную интеграцию с операционной системой.

Читаете нас в Google? Добавьте Comss.ru в источникиДобавьте Comss.ru в источники Google
Новые статьи будут чаще в «Главных новостях» Google. Без подписок и уведомлений, отключается в один клик. Нужен вход в аккаунт Google.Наши статьи будут чаще в «Главных новостях». Нужен вход в Google.
Добавить в Google
Автор:
Комментарии и отзывы

Нашли ошибку?

Новое на сайте