Кроссплатформенная платформа пользовательского интерфейса .NET для Avalonia


Выпущена первая бета-версия Avalonia, кроссплатформенной платформы пользовательского интерфейса .NET с XAML, привязкой данных и элементами управления без внешнего вида. Avalonia можно использовать для разработки приложений на основе XAML для Windows, Mac и Linux.

Avalonia использует диалект XAML, аналогичный диалекту, который используется в WPF, UWP и Xamarin Forms. Он поддерживает привязку, MVVM, элементы управления без внешнего вида и шаблоны данных, а также имеет подключаемый модуль Visual Studio и набор основных шаблонов .NET.
Текущая бета-версия Avalonia поставляется с шаблонами для создания либо простых приложений Avalonia, либо приложения Avalonia MVVM, которое использует шаблон Model-View-ViewModel с ReactiveUI.
Хотя диалект XAML похож на диалект Windows Presentation Foundation, различные аспекты Avalonia отличаются от WPF, начиная со способа работы стилей. Стилизация в Avalonia использует систему, подобную CSS, которая стремится быть более мощной и гибкой, чем существующие системы стилей XAML. У вас могут быть каскадные и перекрывающиеся стили и селекторы, а элементы управления могут иметь псевдоклассы; это классы, которые определяются самим элементом управления, а не пользователем.

Связывание Avalonia из кода работает несколько иначе, чем WPF / UWP. На низком уровне система привязки Avalonia основана на IObservable Reactive Extensions, который затем строится на привязках XAML (которые также могут быть созданы в коде).
Бета-версия имеет ряд улучшений по сравнению с более ранними альфа-версиями, включая использование Portable.Xaml в качестве анализатора XAML.
Новым в этом выпуске является поддержка отложенного рендеринга. Это позволяет избежать необходимости каждый раз визуализировать все окно (как это было в альфа-версии). Вместо этого отложенный рендерер рендерит низкоуровневый граф сцены в потоке пользовательского интерфейса, который затем рендерится в окно в отдельном потоке рендеринга.

Был добавлен новый бэкэнд на основе Monomac для платформ Mac OSX, чтобы уменьшить количество необходимых двоичных файлов и использовать диалоговые окна окна Какао, что делает ваше приложение более естественным.

Также существует новая архитектура средства предварительного просмотра, которая позволяет разработчикам создавать дизайнеров для платформ, отличных от Windows. Предыдущее средство предварительного просмотра использовало Win32 API voodoo для переназначения окна приложения в конструктор, что означало, что средство предварительного просмотра было привязано к Win32 и полной платформе .NET. Новая архитектура средства предварительного просмотра использует транспортный протокол TCP. Это обеспечивает связь между приложением и дизайнером независимо от платформы.
Разработчики говорят, что расширение AvaloniaVS уже было обновлено для использования этого нового протокола, и, надеюсь, скоро появятся дизайнеры для других IDE.

Больше информации
Веб-сайт Авалонии
Статьи по Теме
Как работает XAML
WPF — простой способ 3D

Чтобы быть в курсе новых статей на I Programmer, подпишитесь на нашу еженедельную новостную рассылку, подпишитесь на RSS-канал и подпишитесь на нас в Twitter, Facebook или Linkedin.

Комментарии
Оставьте комментарий или просмотрите существующие комментарии с помощью Disqus
или отправьте свой комментарий по адресу: comments@i-programmer.info


Добавить комментарий