Показать сообщение отдельно
  #32 (permalink)  
Старый 23.03.2012, 01:56
Аватар для antonM
Кандидат Javascript-наук
Отправить личное сообщение для antonM Посмотреть профиль Найти все сообщения от antonM
 
Регистрация: 11.08.2011
Сообщений: 103

Кстати тема интересная и актуальная. Меня Java ну совсем "не прет", поэтому начал искать возможные пути написания на JS+HTML+CSS под мобильные платформы. Из всего что перечитал и попробовал (OSS) более ли менее работоспособные варианты Titanium (Appcelerator) и PhoneGap. Titanium мне больше понравился для написания десктопных приложений. Честно, пока не пробовал писать что-то серьезное... так мелкие поделки, но прикольно.
С помощью PhoneGap пробовал писать под Андроид (дома есть два девайса под Андроидом LG GT540 (2.1) и Omnia II с портированным Андроидом (2.2) на борту. Очень понравилось. Настройку IDE делал по мануалу с сайта все завелось с полуоборота. Радует что проект живой и активно развивается.
Написал пока два тестовых приложения. Оба работают, на LG с родным Андроидом работают очень быстро, чуток проигрывают конечно нативным приложениям но неискушенный пользователь не заметит.
Пока писал и разбирался с особенностями, конечно перепробовал кучу библиотек для UI. Замеры скорости не делал (если научите как - сделаю), поэтому пишу субъективные ощущения на глаз.
Фреймворки:
- zepto - неплохая замена jquery, но начав с ней работать обнаружил отсутствие целой кучи jquery-вских фич. Например нельзя получить value select-а и прочие мелкие недочеты, нет многих привычных для jquery селекторов. Одним словом, постоянно присутствует чувство какой-то недоделанности и нехватки... (или я не разобрался до конца с ней) Как потом выяснил даже jquery 1.0 по скорости быстрее этого zepto, а по функциональности... делает намного больше. Но, зато в zepto есть поддержка таких событий как tap, singleTap, doubleTap, swipe, pinch...
- jo - комплексная штука тут вам и фреймворк и UI. Скачал, почитал, попробовал, удалил. Синтаксис не понравился, несколько необычный как после jquery. Хотя вроде хвалят...
- jquery - волне работает и выполняет все поставленные задачи. Для моих задач хватило версии 1.4.

IU
- jquery mobile, dhtmlx touch, sencha touch - много виждетов, тяжелые и тормознутые (хотя на подходе эра n-ядерных девайсов, но при написании стараюсь ориентироваться на пользователя с девайсом за 150-200 у.е., что-то типа Optimus-а). Пробовал все три. Приложение состоящее из трех страничек и небольшого текста (сайт-визитка по сути) после N-десятков секунд запуска и N-секунд перелистывания между страничками хочется побыстрее удалить с телефона, а сам телефон разбить. (jquery mobile на реальном девайсе смотрится убого, хотя в эмуляторе все красиво ).
- jqtouch - чуток полегче предыдущих "трех богатырей" но явно еще сыроват.
- iui - понравился. Легкий и быстрый. Правда непонятно что с проектом. Толи он заброшен то ли вялотекущий. Исходники лучше всего не скачивать, а выдрать с любой странички с примером. С официальным архивом для закачки многие примеры с сайта просто не работают. Несколько нестандартный подход к компоновке интерфейса. Каждая листаемая страница это отдельный элемент одного и того же документа. Как себя поведет такая архитектура на больших приложениях трудно сказать, скорее всего не лучшим образом.

Это примитивный краткий обзор личных проб и ошибок. Полный список рекомендуемых библиотек можно глянуть тут.
Я пока остановился на двух вариантах jquery + самописные элементы интерфейса или jquery + iui.

P.S. Есть еще такие вещи как RoMobile - для поклонников Ruby (ставил ради интереса, но не использовал), Cappuccino - я так понял синтаксис похож на Objective-C, подойдет любителям этого языка (тоже не пробовал после изучения примеров понял, что не мое).
Из планируемых дейвайсных функций реализуемых через PhoneGap хочу попробовать работу с БД и Геолокацию в следующих приложениях.

Последний раз редактировалось antonM, 23.03.2012 в 04:35.
Ответить с цитированием