Перейти к основному содержимому
Версия: 11.0.0

Создание кроссплатформенных приложений

Данное руководство познакомит вас с проектированием кроссплатформенных приложений на Avalonia, для максимизации переиспользования кода и обеспечения согласованности UI между всеми основными платформами: Windows, Linux, macOS, iOS, Android и WebAssembly.

При создании приложений, использование подхода Xamarin.Forms и MAUI, как правило приводит к небольшому количеству общего функционала, а также к универсальному пользовательскому интерфейсу. В отличии от них, Avalonia UI подталкивает к созданию собственного UI.

Ниже, в краткой форме указаны ключевые моменты при создании кроссплатформенных приложений на Avalonia:

  1. Используйте .NET - Разрабатывайте ваше приложение на C#, F# или VB.NET. Существующий код, написанный на .NET с использованием Avalonia, можно легко портировать на Windows, Linux, macOS, iOS, Android и WebAssembly
  2. Применяйте паттерн MVVM - Разрабатывайте пользовательский интерфейс приложение с паттерном Model/View/ViewModel (MVVM). Данный подход позволяет отделить "Model" и "View" друг от друга, используя "ViewModel" в качестве посредника. Благодаря этому, гарантируется независимость логики UI от выбранной платформы, что способствует переиспользованию кода и улучшению его сопровождения.
  3. Используйте графические возможности Avalonia - Avalonia не зависит от нативных элементов UI. Подобно Flutter, она рисует его с нуля. Такой подход не только обеспечивает внешнее единообразие на всех платформах, но и высокий уровень настроек, позволяя адаптировать UI под ваши потребности.
  4. Баланс между основным и платформозависимым кодом - ключом к достижению максимальному переиспользованию кода, является баланс между основным и платформозависимым кодом. Основной код должен включать в себя все, что не взаимодействует напрямую с выбранной платформой.