Xamarin.Forms

Бесплатно
Открытый исходный код
Windows
macOS
Linux
Android
iOS

Сайт: docs.microsoft.com/xamarin

Xamarin.Forms — это кроссплатформенный фреймворк для разработки пользовательских интерфейсов на языке C#, предназначенный для создания мобильных и настольных приложений с общей UI-логикой. Изначально разработанный как часть экосистемы Xamarin, он позволял разработчикам описывать интерфейсы декларативно и программно, после чего соответствующие элементы отображались на целевых платформах (Android, iOS, UWP и других) с использованием нативных рендереров. Фреймворк обеспечивал совместное использование кода как для логики приложения, так и для представления, сокращая время разработки и упрощая сопровождение.

В архитектуре Xamarin.Forms предусмотрены слои абстракции для визуальных элементов, макетов, страниц и навигации, а также механизмы привязки данных, шаблонов и привязки команд к логике приложения. Разработка могла вестись через XAML для декларативного описания интерфейса или в C# для динамической генерации элементов. Со временем проект получил интеграцию с инструментами сборки и экосистемой .NET: документация, расширения и пакеты облегчали добавление платформенно-специфичных возможностей и нативных функций через механизмы эффектов, кастомных рендереров и DependencyService.

  • Кроссплатформенность: единая кодовая база для Android, iOS и Windows с возможностью общего UI-кода.
  • XAML и C#: поддержка декларативного описания интерфейсов и программной генерации элементов.
  • Рендереры: платформенно-специфичные рендереры, которые отображают абстрактные элементы как нативные контролы.
  • Привязка данных: двусторонняя привязка, шаблоны данных и механизм INotifyPropertyChanged для разделения представления и логики.
  • Навигация и страницы: встроенные механизмы навигации между страницами, вкладками и модальными окнами.
  • Компоненты и шаблоны: поддержка шаблонов представления, ресурсов и стилей для повторного использования UI-элементов.
  • Расширяемость: эффекты, поведениия и кастомные рендереры для доступа к нативным API и изменению визуального отображения.
  • Интеграция с платформой: возможность вызова нативных библиотек и сервисов через DependencyService и платформенно-специфичный код.
  • Инструменты разработки: поддержка отладчиков, дизайнеров XAML и сборочных систем в составе .NET-экосистемы.
  • Переход и преемственность: концепции и опыт использования Xamarin.Forms эволюционировали и частично перенесены в последующие инициативы .NET для кроссплатформенного UI.
Подробнее