Как стать автором
Обновить

Комментарии 20

AvaloniaUI — кросс-платформенном XAML фреймворке для .NET.


а нужен ли AvaloniaUI, если MAUI(.NET Multi-platform App UI) развивается?
github.com/dotnet/maui

Насколько я понимаю, авалониа уже есть, а maui еще только в зачатке.

MAUI — это, по сути, все тот же Xamarin.Forms. Одно из измнений бросающихся в глаза: поддержка macOS переходит под крыло MS.


Например, то, что хотят использовать компилятор, написанный для Avalonia, рассматривают в использовании для WinUI, говорит в пользу авалонии.


Ну, и можно задуматься над тем, что с помощью авалонии можно задуматься о переносе винформ-приложений на кроссплатформ ;)

MAUI это Замарин, по сути. Всегда было интересно, почему не хотят в Майкрософт сделать это нативно.
По факту это и есть «нативно» (для экосистемы .NET). Xamarin ведь принадлежит MS
Учитывая, что MAUI будет основан на обёртках нативных контролов как в Xamarin, я бы всё-таки ставил на AvaloniaUI, где интерфейс полностью рендерится фреймворком как в WPF.
Да, согласен. Буквально недавно «обнаружил» этот фреймворк. Увы, достаточно сильно он отличается от WPF. Если я правильно понимаю, то концепт стилей сменился достаточно радикально и теперь большее на css. Тяжелые проекты будет тяжко портировать.

Тяжело будет портировать в любом случае) Хотя бы из-за отсутствия различных библиотек контролов и приколюх, которые есть для WPF. А к другой организации стилей привыкаешь буквально за пару-тройку дней. Мне вот нравится синтаксис байндингов, когда вместо {Binding Path=Property, RelativeSource{RelativeSource Self}},
пишешь что-то в духе {Binding $self.Property}
Да, кстати.
И вот, хотя бы, за вот это построю монумент из стаканчиков из под кофе в честь того, кто это заимплементил.

{Binding !AllowInput}"

Миллиарды булеан-конвертеров канут в лета.

Такое реализовывалось для WPF MVVM фреймворком MugenMVVMToolkit, который стал для меня незаменим при разработке WPF приложений. Там вообще можно было делать что-то такое и оно будет прекрасно работать:
Text $string.Join($Environment.NewLine, $GetErrors())
Я связывался с автором MugenMVVMToolkit, он сказал что посмотрит в сторону портирования его для Avalonia.

Пока выглядит не по гайдлайнам. Особенно по цвету и по тёмной теме.

Да, у нас, наверное, нет 100% соответствия гайдлайнам, однако мы стараемся придерживаться их.
Распишите, пожалуйста, конкретнее ваши замечания здесь, или, что будет еще лучше — оформите их в качестве ишью.
Расписывать в ишью нет времени. Проверьте отступы между элементами (check me и галочка), контраст цвета, размеры шрифтов, скругления, hover. Выпадающие списки особенно ужасны.
А AvaloniaUI может работать в сессии Wayland?

Это лучше спросить у kekekeks или в чате в телеграме или гиттере

Нативно — нет, биндингов к libwayland не завезли, а в одно лицо их с наскока до рабочего состояния быстро довести не получилось. Ну и напоролся в процессе на несколько ограничений, уже не помню каких, нужно поднимать логи вейландовского IRC.


Через XWayland всё работает.

Давно смотрю в сторону Avalonia, а сейчас как раз намечается старт long-term проэкта. То есть не написал и забыл, а придётся «возиться» с ним долго. Подходит Avalonia на долгосрок — какова Ваша стратегия — активное развитие ломает ли API?

И ещё вопрос — а как у Вас дела с виртуализацией данных обстоят? Списки/гриды и деревья, в которые можно добавить миллион элементов? Спасибо!
Активное развитие ломает ли API?

Скорее всего, если не делать что-то очень низкоуровневое, то столкнуться с тем, что что-нибудь перестало работать из-за обновлений не удастся.


А как у Вас дела с виртуализацией данных обстоят?

Об этом я точно не знаю, лучше все-же задать этот вопрос в телеграме.

API по возможности стараемся не ломать, но это не всегда возможно.
https://github.com/AvaloniaUI/Avalonia/wiki/Breaking-Changes — перечень ломающих изменений между версиями
https://github.com/AvaloniaUI/Avalonia/issues/3538 — общая политика касательно работы с ломающими изменениями и перечень компонент, где они точно будут

Спасибо за ответ!
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации