.NET MAUI — один код для всех платформ

21 May, 2026

Помните те времена, когда для создания приложения под Android, iOS и Windows требовалось три отдельных проекта, три команды разработчиков и тройной бюджет? С появлением .NET MAUI эта головная боль осталась в прошлом.

Что случилось с Xamarin?

Если вы работали с Xamarin.Forms, считайте .NET MAUI его логичным развитием. Команда Microsoft взяла все лучшие идеи Xamarin и расширила их на мир десктопных приложений. Теперь из одной кодовой базы можно собрать:

  • Мобильные приложения для Android и iOS
  • Десктопные версии для Windows и macOS
  • Даже iPadOS не остался без внимания

Пример приложения погоды на всех платформах

Почему разработчики в восторге?

  1. Полноценный нативный интерфейс — ваше приложение не будет выглядеть как «кроссплатформенный зомби». Каждый элемент интерфейса преобразуется в нативные компоненты целевой платформы.

  2. Горячая перезагрузка — больше не нужно пересобирать проект после каждого изменения в XAML. Изменения видны мгновенно.

    Реклама
  3. Доступ к специфичным API — через DependencyService можно использовать платформенно-зависимый функционал:

// Пример вызова платформенно-зависимого кода
public interface IDeviceInfo
{
    string GetModel();
}

// Использование в общем коде
var deviceModel = DependencyService.Get<IDeviceInfo>().GetModel();
  1. Единая кодовая база — до 80% кода можно использовать на всех платформах. Остальные 20% — это специфичные для платформы реализации.

Под капотом

.NET MAUI использует:

  • MVVM (Model-View-ViewModel) как рекомендуемый паттерн
  • XAML для декларативного описания интерфейсов
  • .NET CLI для работы с проектами
  • Roslyn для компиляции

Интересный факт: под капотом MAUI использует те же механизмы, что и Blazor, позволяя теоретически запускать приложения даже в браузере.

Когда MAUI особенно хорош?

  1. Корпоративные приложения — когда нужно быстро сделать внутренний инструмент для сотрудников с разными устройствами.
  2. Прототипирование — за день можно собрать работающий прототип под все платформы.
  3. Приложения средней сложности — новостные клиенты, трекеры, утилиты.

А что с поддержкой?

  • Visual Studio 2022 — полноценная поддержка с дизайнером интерфейсов
  • Visual Studio Code — работает, но с ограничениями
  • dotnet CLI — полный контроль из командной строки

Стоит ли пробовать?

Если вы:

  • C#-разработчик, который хочет выйти за пределы веба или десктопа
  • Фронтенд-разработчик, уставший от JavaScript-фреймворков
  • Стартап, которому нужно быстро зайти на все платформы

...то .NET MAUI — ваш идеальный выбор в 2025 году.

Для начала достаточно установить .NET 10 и выполнить:

dotnet new maui

Главное преимущество MAUI — он позволяет думать о логике приложения, а не о различиях между платформами. И раз уж Microsoft вкладывается в этот фреймворк (посмотрите на последние обновления в .NET 10), можно быть уверенным — технология надолго.