Pull to refresh

Кроссплатформенная разработка на мобильных устройствах

Reading time 2 min
Views 15K
Development of mobile applications *
Translation
Original author: Mauro Dalu
Сравнение 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?

1. PhoneGap не вставляет родной интерфейс устройства в javascript. Titanium с другой стороны имеет продвинутый UI API и может создавать все виды родных для устройства контролов. Таким образом приложения на Titanium выглядят более родными, чем приложения на PhoneGap.
2. 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. Отдельно про Titanium можно прочитать здесь: habrahabr.ru/blogs/javascript/95010
Tags:
Hubs:
Total votes 41: ↑28 and ↓13 +15
Comments 21
Comments Comments 21

Posts