Pull to refresh

Xamarin.Forms не готов к боевым условиям?

Reading time 2 min
Views 14K
Xamarin — продукт, дающий возможность используя .NET писать приложение сразу под 3 мобильные платформы — Android, iOS и Windows Phone. Не так давно в продукт добавлена новая технология — Xamarin.Forms, позволяющая писать один XML-файл с разметкой на все платформы сразу. Но насколько эта технология готова к использованию в продакшене?

Визуальный редактор и автодополнения


Пока что отсутствует визуальный редактор или предпросмотр того, что получается из XML'я (точнее, XAML'а). Да-да, я сам достаточно давнее время назад писал PHP и HTML в редакторах вроде Notepad++, и помню, что это вполне реально. Но там мне нужны были секунды, что бы посмотреть, что получается — сохранить да нажать F5 в браузере. Здесь же нужно скомпилировать и собрать приложение, залить на устройства или эмуляторы, зайти на нужную страницу… не так уж и быстро выходит.

Эта загрузка будет вечной, и батареек ей хватит надолго

Ещё больше поражает то, что при редактировании разметки у нас не будет подсказок по доступным объектам и их свойствам. Даже при работе из родной Xamarin Studio. Добро пожаловать в прошлое…



Поддержка ReSharper'ом и Visual Studio


Другая проблема при работе с Xamarin.Forms в том, что по XML с разметкой генерируются файлы с кодом. Это хорошо. Но в отличии от генерации кода по редактору Storyboard'ов, файлы эти генерируются при непосредственной сборке проекта, во временной директории. От такой радости ReSharper сходит с ума и ничего нормально подсветить и посоветовать не может, как впрочем и сама Visual Studio.

Это не Рио-де-Жанейро. Это гораздо хуже.

В родной Xamarin Studio с этим порядок, но эту студию я не очень люблю. Чего только стоят периодически вылетающие ошибки при попытке сделать банальнейшую вещь — сохранить файл по нажатию Ctrl+S! Конкретно к Xamarin.Forms это не относится, но меня эта ошибка стабильно «радует» с прошлого года.



Мелочи из комментариев


Из комментариев других разработчиком так же выяснилось, что, как минимум
  • Собственные шрифты без проблем пока можно использовать только под iOS — для Android'а придётся писать собственный рендер (Custom Render)
  • Есть проблемы с логикой указания размеров и отступов элементов, подробней тут

В общем и целом, задумка то хорошая, но прямо сейчас, поигравшись и пощупав инструменты, я таки выбрал разработку индивидуального интерфейса под iOS и Android. Кто-то конечно может сказать, что я зажрался, но блин! Сегодня инструменты порой решают не меньше, чем сама технология. Опытный разработчик использую подсказки IDE, автодополнения и прочие радости современности (вроде статистических анализаторов) может экономить кучу времени и избегать массы ошибок. В случае с Xamarin.Forms с этим пока всё достаточно безрадостно.

А какой у вас опыт использования Xamarin.Forms? Вы уже готовы терпеть все недостатки или взяли её в production? А может я всё не так понял и на самом деле все необходимые для меня фичи уже в наличии, просто нужно пошаманить с настройками? Жду ваших комментариев!
Tags:
Hubs:
+12
Comments 15
Comments Comments 15

Articles