Периодически тестирую MAUI и как по мне - он ещё слишком сырой. Насчёт Avalonia - тоже достаточно интересная технология. Но пока мобильные платформы ещё очень нестабильные.
А разве конкуренты делают иначе? Просто посмотрите на Apple с их политикой. И вы ещё жалуетесь на Майков? Да и банально: Если вопрос будет стоять между капитализацией компании в 2 триллиона и тем, что бы сделать миру лучше и выпускать бесплатное открытое ПО - то я явно выбрал бы первый вариант.
К сожалению — пока ещё нет. Всё ещё нужно писать конвертор. И то же самое можно сказать и про валидацию. Но в официальном релизе WunUI 3 валидация уже должна быть.
Формы на данный момент уже являются устаревшей технологией, которая находится на пике развития и уже не сможет пробить потолок.
WPF ещё хорош, но у WinUI куда больше функций и возможностей.
С точки зрения дизайна — WinUI может дать нам Reval эффекты, Acrylic цвета, много возможностей для работы с моушн эффектами и даже поддерживает Lottie анимации.
С точки зрения функциональности — у WinUI куда больше возможностей. Банально, вчера я тестировал компонент, который позволяет трэкать глаза пользователя, работая с Tobii Eye Tracker.
Да, распространение может быть и без Mcrosoft store. Но вот с сертификацией уже посложнее. А при публикации приложения в Microsoft Store, ты автоматически получаешь сертификацию от Microsoft и фирм партнёров.
На самом деле, после того, как WinForms стал оупенсурсным, комьюнити проявило достаточно большой интерес к нему. Поэтому, в .NET 5 для форм приготовили несколько фишек. Среди них улучшенные компоненты и безумная оптимизация:
Для начала, нужно понимать, что Uno Platform — просто способ запускать UWP и WinUI приложения на разных платформах. С Uno я работаю уже достаточно долгое время, и меня не перестаёт радовать то, как быстро развивается эта технология. Моя задача стояла в развитии кроссплатформенного направления компании. И в первую очередь речь зашла о C#. После долгих дискуссий выбор стоял между GTK, AvaloniaUI и Uno Platform. Подкупало то, что помимо обещанных Windows, Mac и Linux, была возможность собирать приложения под мобильные платформы и даже Web Assembly. Вот это я понимаю — кроссплатформенность. И мы решили рискнуть, выбрав Uno.
В целом — технология работает. Но не без подводных камней. Начиная от того, что некоторые функции не реализованны, и заканчивая отсутствием целых компонентов. Например, для работы с глобальными событиями клавиатуры, у UWP есть класс KeyboardAccelerator. Но у UNO его нет… И таким образом, нигде, кроме как на Windows, у тебя это работать не будет.
Тем не менее, от Uno Platform мы не отказались, и сделать работающий продукт вполне возможно.
Часто бывает такое, что тебе необходима какая-то функция/метод, который ещё не перенесён в Uno. Я создаю Issue у них на гитхабе, прихожу на следующий день, обновляю nuget пакет, и она уже реализованна. Так же, у тебя всегда есть возможно контрибьютить проект лично.
Для понимания всей мощи технологии, команда разработчиков сделала несколько оупенсурсных приложений с использованием своей технологии. Среди них и калькулятор Windows(да, он теперь кроссплатформенный).
Так же, в команде разработчиков Uno есть несколько Microsoft MVP. Вся команда очень активно сотрудничают с командами Microsoft для улучшения своего детища. Например, с командой Xamarin. Так же, у команды есть свой Discord сервер, где каждый день проходят дискуссии и обсуждения. Присоединится: https://discord.gg/eBHZSKG
И в окончании хочу сказать, что Microsoft очень позитивно относится к Uno Platform и всячески пытается им помогать. Для большего понимания, что из себя представляет Uno, рекомендую посмотреть недавний стрим на официальном канале Microsoft Visual Studio на youtube о возможностях Uno Platform с одним из главных разработчиков:
Полагаю, что Microsoft не получает удовольствия от поддержки огромного количества схожих технологий. И сейчас идёт период «объединения». Примером тому служат платформы .NET Framework и .NET Core, которые слились в .NET 5.
Так же, совсем недавно компания прекратила поддержку .NET Core 2, что ещё больше демонстрирует уверенные действия в унификации платформы.
Периодически тестирую MAUI и как по мне - он ещё слишком сырой.
Насчёт Avalonia - тоже достаточно интересная технология. Но пока мобильные платформы ещё очень нестабильные.
А разве конкуренты делают иначе?
Просто посмотрите на Apple с их политикой. И вы ещё жалуетесь на Майков?
Да и банально: Если вопрос будет стоять между капитализацией компании в 2 триллиона и тем, что бы сделать миру лучше и выпускать бесплатное открытое ПО - то я явно выбрал бы первый вариант.
Отличная статья! С радостью бы посмотрел на разбор ещё парочки интересных архитектурных решений.
Color Theme Editor for Visual Studio 2019
Color Themes for Visual Studio
WPF ещё хорош, но у WinUI куда больше функций и возможностей.
С точки зрения дизайна — WinUI может дать нам Reval эффекты, Acrylic цвета, много возможностей для работы с моушн эффектами и даже поддерживает Lottie анимации.
С точки зрения функциональности — у WinUI куда больше возможностей. Банально, вчера я тестировал компонент, который позволяет трэкать глаза пользователя, работая с Tobii Eye Tracker.
Что б посмотреть все возможности WinUI, рекомендую потыкать Xaml Controls Gallery и
Windows Community Toolkit Sample App.
Больше информации можно прочитать в этой статье: What’s new in Windows Forms runtime in .NET 5.0
Поэтому, уже не раз сталкиваюсь с тем, что формы всерьёз начали расценивать как возможную платформу для небольшого нового проекта.
В целом — технология работает. Но не без подводных камней. Начиная от того, что некоторые функции не реализованны, и заканчивая отсутствием целых компонентов. Например, для работы с глобальными событиями клавиатуры, у UWP есть класс KeyboardAccelerator. Но у UNO его нет… И таким образом, нигде, кроме как на Windows, у тебя это работать не будет.
Тем не менее, от Uno Platform мы не отказались, и сделать работающий продукт вполне возможно.
Часто бывает такое, что тебе необходима какая-то функция/метод, который ещё не перенесён в Uno. Я создаю Issue у них на гитхабе, прихожу на следующий день, обновляю nuget пакет, и она уже реализованна. Так же, у тебя всегда есть возможно контрибьютить проект лично.
Для понимания всей мощи технологии, команда разработчиков сделала несколько оупенсурсных приложений с использованием своей технологии. Среди них и калькулятор Windows(да, он теперь кроссплатформенный).
Так же, в команде разработчиков Uno есть несколько Microsoft MVP. Вся команда очень активно сотрудничают с командами Microsoft для улучшения своего детища. Например, с командой Xamarin. Так же, у команды есть свой Discord сервер, где каждый день проходят дискуссии и обсуждения. Присоединится: https://discord.gg/eBHZSKG
И в окончании хочу сказать, что Microsoft очень позитивно относится к Uno Platform и всячески пытается им помогать. Для большего понимания, что из себя представляет Uno, рекомендую посмотреть недавний стрим на официальном канале Microsoft Visual Studio на youtube о возможностях Uno Platform с одним из главных разработчиков:
Так же, совсем недавно компания прекратила поддержку .NET Core 2, что ещё больше демонстрирует уверенные действия в унификации платформы.
Но, в github репозитории Project Reunion можно найти много интересного. В том числе, и информацию по упаковке приложения:
И там присутствует очень интересная таблица с планами на развитие:
Из неё видно, что приложения на WinUI + .NET будут поддерживать классическую упаковку. Но этого стоит ждать ближе релизу.