Xamarin против Titanium Appcelerator?

Я разработал собственное приложение для Android, теперь требование заключается в том, что разработанное приложение должно быть в кросс-платформе, например, Xamarin или Titanium Appcelerator, теперь, пожалуйста, некоторые эксперты. Инженеры-разработчики программного обеспечения Предложите мне, какую кросс-платформу выбрать и почему? Если я выберу Xamarin, то в чем преимущества и недостатки Xamarin, и если я выберу Titanium Appcelerator, то каковы преимущества и недостатки титана? Любая помощь будет высоко оценена.

Некоторые факторы, в которых 2 являются разными (или нет).

Цена

К настоящему времени обе стоят денег. У Xamarin есть бесполезная (только очень маленькая версия) бесплатная версия, платные версии начинаются с 25 $ / мес. https://store.xamarin.com/

Титановая студия была бесплатной, но, к сожалению, несколько недель назад она меняла. Существующие бесплатные пользователи перемещаются в бесплатную лицензию Indie Indie (что приятно!), Новые должны платить, минимум 39 $ / мес. http://www.appcelerator.com/pricing/ Кроме того, самая последняя версия Titanium является приглашением только, и хотя у меня есть приглашение зарегистрироваться для приглашения, я все еще жду, что недели будут приняты.

Итак, у Xamarin есть небольшое преимущество здесь – к настоящему моменту – хотя вам также нужно посмотреть, что вы хотите сделать. Indie edition в порядке, чтобы получить все «нормальное», хотя ему не хватает интеграции Visual Studio.

Поддерживаемые платформы

Xamarin поддерживает Android и iOS, поддерживается WinPhone, так как .NET работает на WP.

Titanium поддерживает Android, iOS, BlackBerry и Web, говорят, что WinPhone поддерживается, но не работает вообще. https://developer.appcelerator.com/question/181588/how-to-update-to-preview-to-do-windows-development-the-requested-sdk-version-does-not-have-an-assigned- команды-обработчик

Титановая студия с плагином для Windows Phone: Titanium SDK не поддерживает платформу Windows. Это должно – работать с новой версией 4, которая, по слухам, доступна, но я ее не видел (хотя я и пытался).

Итак, если вы хотите использовать WinPhone, используйте Xamarin, если вы хотите использовать BlackBerry, используйте Appcelerator.

IDE

Xamarin имеет интеграцию Visual Studio (бизнес-издание или выше), что отлично. Visual Studio – одна из лучших, возможно, лучших, IDE. Xamarin Studio – это так.

Титановая студия настолько похожа на Xamarin Studio.

Установка и простота использования

У Xamarin есть программа установки «все-в-одном», которая занимает некоторое время, но тогда вы можете начать. Это просто работает. Xamarin имеет очень частое обновление (каждые несколько недель), которое ему иногда нужно, поскольку некоторые функции нарушены, это определенные версии.

Получение Titanium Studio для работы часто бывает затруднительным. Мне пришлось (это не документировано!) Использовать Java 1.6 32Bit, что может быть сложно, так как обычно один обновляет его Java. Officiall, Java 1.8 поддерживается, но это просто не сработало для меня. Titanium Studio намного сложнее настроить. Титан имеет редкие udpates, менее одного раза в месяц.

язык

Xamarin – это C #. Вы получаете отличный, типизированный язык, который масштабируется от небольших до очень сложных приложений и имеет отличные языковые конструкции для сложных типов данных и сценариев

Титан – JS. Вы получаете хороший динамический язык, который очень гибкий и в основном предназначен для небольших, гибких приложений.

Вы можете создавать хорошие программы на обоих языках, это немного сложнее в Javascript.

Оба компилируются в native.

Вы можете использовать как библиотеки js (Titanium), так и .net (Xamarin).

Кросс-платформенная

В прошлом году Xamarin представила Xamarin.Forms для предоставления кросс-платформенного графического интерфейса. Он работает, хотя многое еще не хватает, так как ориентация должна выполняться вручную.

Использование кросс-платформенного оборудования также непросто. Есть аддоны, которые вы действительно должны проверить, например, xlabs https://github.com/XLabs/Xamarin-Forms-Labs, хотя я не нашел ни одной функции для работы (из тех, что я пробовал). Требование об ошибке было обработано быстро, поэтому я бы предположил, что этот продукт созревает и в конечном итоге будет очень полезен, чтобы иметь 1 базу кода для всех платформ с очень маленьким кодом, зависящим от платформы (только часть DI).

Титан Я не очень много использовал для этого, поэтому я не могу комментировать.

Отдых

Общины большие для обоих продуктов.

У Appcelerator есть бесплатная университетская программа (видео для просмотра / загрузки). У Xamarin есть дорогая университетская программа, но это включает в себя репетиторство и небольшие веб-классы. Также есть бесплатные видеоролики.

Кажется, Appcelerator должен заработать деньги. Xamarin всегда нуждался в том, чтобы заработать деньги, у них есть некоторая поддержка Microsoft к настоящему времени, что полезно, конечно.

Наиболее важным является, вероятно, ваш языковой фон. Это не самое главное, так как вам все равно нужно многому научиться о мобильных устройствах и каждой платформе.

Кроме того, проверьте конкурс: PhonGap / Cordova, а также некоторые новые, более мелкие игроки, некоторые C # и некоторые C ++.

Xamarin 2.0 vs Appcelerator Titanium vs PhoneGap

Сравнение между Corona, Phonegap, Titanium

В вашем конкретном случае: Java и C # очень похожи, а не Java и Javascript.

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

Несколько месяцев назад нам пришлось выбирать между этими двумя решениями. Наше решение было принято ценой Xamarin, которая действительно дорогая, когда титан полностью свободен. Существует также больше документов о титане и большом сообществе из-за его цены.

Главный недостаток для меня в титане заключается в том, что вам абсолютно необходимо подключение к Интернету для работы с ним. Это очень раздражает, потому что вы не можете открыть какой-либо проект без Wi-Fi.

Это решение является вопросом предпочтения и требований. Что касается разработки сложного мобильного приложения, я лично чувствую, что инструменты отладки и профилирования, которые дает вам типичная языковая структура (например, Xamarin), намного лучше, чем предлагаемые при разработке сложного приложения в слабо типизированной языковой среде (например, Как титан). Оба предлагают вам полную версию API для родных мобильных платформ (характеристика, которую я лично считаю существенной), но Xamarin предлагает следующие преимущества:

  • Строго типизированные и очень выразительные языки C # и F #
  • Отличные IDE, такие как Visual Studio и Xamarin Studio
  • Активное и активное сообщество разработчиков
  • Большие инструменты для профилирования
  • Xamarin Insights для подробного мониторинга производительности приложений после развертывания

Я немного предвзятый, потому что мне очень нравится заниматься разработкой Xamarin. Но я чувствую, что 4 года в индустрии мобильных dev дали мне много перспектив на варианты.

Опять же, до тех пор, пока каждая структура обеспечивает полный доступ к каждому бит API-интерфейсов мобильных платформ, она действительно сводится к предпочтению. Но мой голос очень важен для Xamarin.