На сколько хорошо Xamarin справляется с разработкой под Desktop?
Решил, что пора ознакомится и написать пару проектов с прогрессивным (современным) пользовательским интерфейсом на С#. Языком овладел, теперь хочу сделать его основным рабочим языком. Xamarin однозначно есть в планах освоения, т.к. штука универсальная по большей части. Но мне так же приглянулся и WPF. Я хочу делать упор на мобильную разработку, но и под десктоп хочу освоить, навык полезный и востребованный, тем более у меня есть в планах пара проектов конкретно под эту платформу. Мой в вопрос в вот в чём.
1. Если я разрабатываю проект только под десктоп, хватает ли средств Xamarin ?
Логично предположить, что WPF мощнее в этом. Но меня интересует перспектива освоения Xamarin как универсального средства для всех платформ (кроме веба).
2. На сколько хороша кастомизация UI в каждой из этих технологий?
3. Имеет ли смысл изучать оба или Xamarin'a хватит?
Они вроде как структурно очень похожи, и там и там xaml. Просто если если гуглишь проекты на Xamarin чаще всего это мобильные приложения, кажется что Desktop на нём никто не пишет (кроме видимо конторы, где я работал :) и то всё ради С# и порта на мак).
4. Кстати, ещё довольно важный момент для меня, можно ли и там и там сделать редактор кода с подсветкой синтаксиса?
Понимаю, что однозначно тут не скажешь, поэтому интересуют ваши мнения. Спасибо
1. Xamarin это только про мобайл, исключение приложения под Mac. WPF - про windows desktop.
2. Xamarin позволяет все то же самое, что и нативные инструменты разработки. Плюс всегда можно нативные компоненты портировать.
3. Xaml только в Xamarin.Forms, в Xamarin.Native под каждую платформу свои инструменты.
Мое мнение - вы путаете теплое с мягким. Если проекты под winodws - WPF. Нужна мобильная разработка - Xamarin. Между ними можно расшарить бизнес-логику, UI же никак не перекликается.
1. Если я разрабатываю проект только под десктоп, хватает ли средств Xamarin ?
Логично предположить, что WPF мощнее в этом. Но меня интересует перспектива освоения Xamarin как универсального средства для всех платформ (кроме веба).
В Xamarin Forms есть поддержка "бэкэндов" (в терминологии XF) для WPF, GTK, MacOS. Вроде как они еще в бете, нугеты были, исходники доступны на официальном гитхабе, в официальном блоге и куче не официальных были статьи на эту тему. Попробуйте, может уже готово.
Кстати, ещё довольно важный момент для меня, можно ли и там и там сделать редактор кода с подсветкой синтаксиса?
Посмотрите исходники avalon studio, оно написано на авалонии. Авалония больше заточена на десктопы, но там не нативная отрисовка UI, что, впрочем, не минус.
goldsphere48, Почему вас не заинтересовало что в солюшене Xamarin Forms создаются проекты под iOS и андроид, а добавление проекта под wpf кажется чем то странным?)
Найдите разницу в отрисовке ui на Xamarin Forms и Avalonia, покопайтесь в исходниках. После этого всё встанет на свои места.
PS. Правильный ответ: смысл добавления WPF проекта в солюшен с Xamarin.Forms в том что бы UI рендерился нативно для каждой платформы, в этом случае - на стороне WPF.