Разработка мобильных приложений в Xamarin
Если вы разработчик C# и собираетесь заниматься разработкой приложений для мобильных платформ iOS и Android, то платформа Xamarin позволит вам это сделать, не меняя привычный язык программирования и среду разработки. Вы сможете разрабатывать мобильные приложения для Android и iOS, используя Visual Studio и C#.
О компании Xamarin
Инструменты для разработки мобильных приложений Xamarin созданы и продолжают совершенствоваться американской компанией Xamarin. В штате компании около 170 сотрудников. Xamarin используют около 15 тысяч компаний и более чем 800 тысяч разработчиков по всему миру. Подробности о компании можно почитать здесь.
Разработка на Xamarin
Основной инструмент, с помощью которого компания Xamarin предлагает нам разрабатывать приложения для iOS, Android и Windows Phone, - это Xamarin Studio (см. первую картинку снизу), которая работает на Windows или Mac OS X. Также можно вести разработку благодаря расширениям в среде Microsoft Visual Studio (см. вторую картинку снизу).
В Xamarin Studio вам будут доступны привычные фишки и инструменты для разработки: подсветка синтаксиса, рефакторинг, автодополнение кода, поиск по проекту, отладка. Есть также встроенная интеграция с системами контроля версий Git и SVN и возможность интеграции с TFS. В общем, всё очень похоже на Microsoft Visual Studio.
Обратите особое внимание, что для сборки приложения для iOS вам потребуется последняя версия iOS SDK (поставляется с Xcode) и одна из последних версий Mac OSX (Mavericks или Yosemite). Т.е. в любом случае нужен будет Mac.
Как работают приложения, созданные в Xamarin?
Чтобы разработанные в Xamarin приложения работали на Android и на iOS используется разный подход.
В Android ваше приложение работает на платформе Mono - полнофункциональной реализации платформы .NET. Mono даёт возможность использовать все возможности C# и .NET, в том числе JIT-компиляцию (динамическую компиляцию), управление памятью, рефлексию и базовые .NET библиотеки. Когда вы используете классы .NET библиотек движок Mono перенаправляет все вызовы к API функциям Android.
В iOS тоже используется Mono, но по-другому. Ваше приложение перед выполнением компилируется в ARM-совместимый машинный код. Вы также можете использовать все возможности C# и .NET включая управление памятью, рефлексию и базовые .NET библиотеки.
Здесь нужно заметить, что ваше приложение сможет работать не только под iOS и Android, но и под Windows Phone, т.к. на Windows вам также будет доступен Xamarin.Forms API ну, и конечно, у вас будет доступ к оригинальной платформе .NET.
Использование сторонних .NET библиотек с Xamarin
Кроме стандартных библиотек .NET вы можете использовать библиотеки сторонних разработчиков. Все библиотеки, доступные для разработки ваших приложений в Xamarin, можно посмотреть в магазине Xamarin Component Store. Здесь есть и платные и бесплатные компоненты. При выборе сразу обращайте внимание, какие ОС поддерживаются: iOS, Android или Windows.
Кроме того вы можете использовать свои готовые .NET библиотеки, которые вы используете на компьютерах с Windows, но не заточенные под определённую платформу, например, без вызовов API функций Windows. Чтобы оценить возможность использования библиотеки с движком Mono вы можете воспользоваться сканнером .NET Mobility Scanner.
Если у вас есть необходимость вызывать существующий Objective-C-код на iOS или существующий Java-код на Android, то это вы тоже сможете делать.
Системные требования Xamarin
Системные требования Xamarin такие же, как и требования для SDK Apple и Google к целевым системам iOS и Android. Обратите также внимание, что для сборки приложения для iOS вам потребуется последняя версия iOS SDK (поставляется с Xcode) и одна из последних версий Mac OSX (Mavericks или Yosemite). Для работы расширений Xamarin для Visual Studio требуется полноценная (не экспресс) версия Visual Studio 2010, 2012 или 2013.
О ценах на Xamarin
Использование Xamarin платное - по подписке. Хотя есть и бесплатная подписка STARTER для ознакомления, но здесь ограничения на размер создаваемого приложения (не более 64Кб скомпилированного кода) и на использование сторонних библиотек. Поэтому пользоваться бесплатной подпиской практически нереально.
Самая дешёвая подписка, с помощью которой можно создавать приложения без ограничения размера с возможностью использования сторонних библиотек – это INDIE стоимостью 299 долларов в год на одного разработчика под одну платформу (Android, iOS или Mac). Если вы хотите разрабатывать для Android и iOS, то вам нужно оформить две подписки. По истечении года вы сможете легально продолжать использовать Xamarin, но не сможете получать обновления, а обновления важны, т.к. регулярно появляются новые версии iOS и Android. Подписку INDIE можно оплачивать помесячно (за 25 долларов в месяц), но в этом случае вы не имеете право использовать Xamarin по истечении подписки.
Для организаций с количеством разработчиков более 5-ти нужно приобретать подписки BUSINESS, 999 долларов в год, или ENTERPRISE, 1899 долларов в год. После истечения подписки вы также можете продолжать использовать Xamarin, но не будете получать обновления. Цены указаны также на одного разработчика и на одну платформу. Для нескольких разработчиков даются скидки. С помощью этих подписок вы уже сможете разрабатывать в среде Microsoft Visual Studio, получите поддержку WCF и System.Data.SqlClient и получите расширенную поддержку. Друг от друга эти подписки отличаются степенью поддержки со стороны компании Xamarin. Также с подпиской ENTERPRISE вы автоматически приобретаете компоненты и темы более чем на 500 долларов, включая SQLCipher, Signature Pad, Lock Screen, Black Leather Theme, Brown Leather Theme и Industrial Theme.
Подписавшись на какую-либо подписку, вы всегда сможете перейти на более продвинутую подписку, доплатив разницу. Для этого нужно послать запрос на адрес Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. .
Студенты могут попробовать получить Xamarin INDIE бесплатно. Форма для заполнения заявки здесь. Преподаватели и институты могут купить подписку BUSINESS без E-mail поддержки на Xamarin.iOS и Xamarin.Android за 99 долларов. Чтобы получить такую скидку нужно отправить запрос с описанием курса и лабораторных работ на адрес Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. . Подробнее о ценообразовании для студентов и преподавателей написано здесь.
Все подробности по подпискам можно почитать здесь.
Облако тестирования Xamarin Test Cloud
Одна из интересных фишек Xamarin – это возможность тестирования вашего приложения в облаке Xamarin Test Cloud. Облако позволяет имитировать и автоматизировать действия пользователя. Также облако предоставляет возможность тестирования на более чем 1000 реальных невзломанных устройств (список девайсов можете посмотреть здесь). Тестовые сценарии могут выполняться параллельно на сотнях устройств одновременно, и вы получите отчёты об испытаниях. Скрипты для тестирования могут быть написаны с помощью Calabash (Ruby) и C#.
С помощью облака Xamarin Test Cloud можно тестировать приложения, написанные не только с помощью Xamarin. Здесь также можно проверить работу приложений созданных с помощью Objective-C, Java, Appcelerator и Phonegap.
Использование облака, как вы можете догадаться, не бесплатное. Доступ производится тоже по подписке. Цена подписки варьируется от 1000 долларов до 12000 долларов за месяц, а оплачивается подписка на год. Разница между подписками в количестве тестируемых приложений, количестве часов тестирования и степени поддержки со стороны специалистов Xamarin.
Страничка облака находится здесь. Чтобы начать пользоваться облаком, напишите об этом разработчикам с помощью специальной формы и ждите обратной связи.
Стоит ли использовать Xamarin для разработки мобильных приложений?
Конечно, вам самим нужно решать, стоит ли разрабатывать мобильные приложения с помощью платформы Xamarin. Использование именно этой платформы может быть оправдано тем, что C# программистам не нужно изучать другие языки программирования и тем, что один код будет работать на всех мобильных платформах и поэтому ваш проект будет проще сопровождать.
Для оценки платформы вы можете скачать Xamarin Studio по бесплатной подписке STARTER или купить на месяц подписку INDIE, можете ознакомиться с документацией и посмотреть примеры.
Tags: Обзоры средств разработки Обзоры программ Xamarin Studio Windows Phone Xamarin Visual Studio iOS Windows Android
Комментарии
Удобно то, что серверную часть и сами мобильные приложения может делать один программист, т.к. разработка идёт на одном языке: c#. И в одной среде разработки: Visual Studio.
RSS лента комментариев этой записи