Сравнение PhoneGap vs. Titanium vs. Rhodes
В первую очередь должен заметить, что кроссплатформенная разработка не
для тех, кто разрабатывает 3D-игры, интерактивные, мультимедийные и
анимированные приложения.
Рассматриваемые в этой статье разработки все построены на
web-технологиях и могут быть использованы web-разработчиками, которые
хотят применить свой опыт в мире мобильных приложений.
PhoneGap и Titanium используют HTML, CSS, and Javascript. Они оба
поставляют Javasript API, чтобы иметь доступ к родным возможностям
устройства. (GPS/Геолокация, вибрация, Accelerometer, звук…). Rhodes
основывается на Ruby, который используется в качестве сервера, который
генерирует html-контент. Через ruby и происходит взаимодействие с
родными функциями устройств.
Для Titanium и PhoneGap логика приложения выполняется внутри родного для
устройства WebView-контрола. В основном любая функция телефона может
быть перенесена на javascript. С другой стороны обычное web-приложение,
которое выполняется внутри браузера на мобильном устройстве, не имеет
доступа к мобильному SDK из-за причин безопасности.
Хоть на сайте Titanium и пишется, что приложения компилируются в
родной для устройства код, не верьте этим словам. Ваш javascript
упаковывается в ресурсы приложения. Когда приложение запускается,
оно загружает ресурсы в UIWebView-контрол и запускает их как
javascript.
То же самое можно сказать и про PhoneGap. С архитектурной точки
зрения эти два фреймворка очень похожи.
Что же касается различий PhoneGap и Titanium?
- PhoneGap не вставляет родной интерфейс устройства в
javascript. Titanium с другой стороны имеет продвинутый UI API и
может создавать все виды родных для устройства контролов. Таким
образом приложения на Titanium выглядят более родными, чем
приложения на PhoneGap. - PhoneGap поддерживает больше мобильных платформ, чем Titanium.
PhoneGap работает на устройствах iPhone, Android, Symbian, Palm
и Blackberry. Titanium позиционируется только для iPhone и
Android
Что же касается Rhodes, то он чем-то похож на PhoneGap. Он поддерживает
те же устройства, что и PhoneGap. Кроме того, может запускаться даже под
win32 для тестовых целей. Вместе с Rhodes поставляется RhoSync —
библиотека для хранения данных приложения на сервере посредством
web-сервисов. Но это не значит, что web-сервисами не могут
воспользоваться PhoneGap и Titanium.
Все перечисленные библиотеки бесплатны. Более подробно о них вы можете узнать на соответствующих сайтах.
Если вы хотите разрабатывать кроссплатформенные 3D-игры, то советую посмотреть в сторону unity3d.com/
Данная статья является вольным переводом и исправлена в соответствии с реальным положением дел.
P.S. В ЦВТ создано приложение для iPhone на основе Titanium под заказ.
P.P.S. Голосуйте за статью на хабре http://habrahabr.ru/blogs/mobiledev/106629/
Метки: разработка по