43
PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Embed Size (px)

DESCRIPTION

Видео со встречи: http://getdev.net/Event/phonegap Кратко поговорим о том как появился, как развивался, что внутри. Рассмотрим явные косяки и неприкрытые плюсы PhoneGap пути. Обратим внимание на скрытые проблемы, которые вы непременно найдёте при активной разработке. Рассмотрим позитивные моменты, которые никто не замечает, но они то есть. Потыкаем существующий инструментарий и варианты интеграции. И решим, где стоит применять PhoneGap и стоит ли вообще.

Citation preview

Page 1: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

PhoneGapдля мобильного разработчика - глубокое погружение без ОЗК

Page 2: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Юрий Крутилинtwitter: @yurykrutilinemail: [email protected]: krutilin

Page 3: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

PhoneGap (Cordova)

Page 4: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 5: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 6: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 7: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 8: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Pure HTML 5 приложение, как бы его в сторы добавить?

Page 9: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Nitobi Software Team

Dave Jonson Andre Charland James Douma

Page 10: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

● 2009 разработали Nitobi показали на Apple Event и назвали PhoneGap

● 2011 Октябрь, Adobe покупает Nitobi

● 2013 Adobe отдаёт Phonegap в Apache foundation в виде Apache Cordova (тут

нужно понимать, что PhoneGap это только одна из реализаций cordova, об

этом будет следующий слайд. Вот такой вот спойлер.)

● 2014 К версии 3.0 происходит глубокий рефакторинг структуры PhoneGap\

Cordova. Появляется работоспособный механизм плугинов. Поддержка npm и

cli.

Страничка истории PhoneGap

Page 11: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Cordovahttp://projects.apache.org/projects/cordova.htmlhttp://cordova.apache.org/#download

PhoneGaphttp://phonegap.com/

appMobi http://appmobi.com/Convertigo http://www.convertigo.com/AppBuilder http://www.telerik.com/appbuilder1ViziApps http://www.viziapps.com/IBM Worklight http://www-03.ibm.com/software/products/ru/worklight-foundation

Определимся в терминах.Основные отличия реализаций от Cordova в дополнительном саппорте, облаках и прочих не всегда понятных плюшках.

Page 12: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Что внутри?

Page 13: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 14: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 15: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 16: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 17: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

● http://plugins.cordova.io● Cordova CLI

Page 18: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 19: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

< 3.0Кроссплатформенная разработка различными IDE. Каждое нужно аккуратно развернуть, и привыкнуть.Пока это сделаешь, твёрдо понимаешь, что сдедующий проект. Только нативно. Только хардкор.

Page 20: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

java и c++objective C и c++или Swift

c# или JS

Page 21: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

+ Ваше любимое IDE для JS

Кодить JS в Xcode нереально. В Eclipse непревычно. В студии, ну ок...

Page 22: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 23: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 24: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК
Page 25: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

> 3.0Стало удобнее. npm, cli, phonegap developer app.

Page 26: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

1. $ sudo npm install -g cordova2. $ cordova create hello com.example.hello HelloWorld3. $ cd hello4. $ cordova platform add ios5. $ cordova platform add amazon-fireos6. $ cordova platform add android7. $ cordova platform add blackberry108. $ cordova platform add firefoxos9. $ cordova plugin search bar code

com.phonegap.plugins.barcodescanner - Scans Barcodes10. $ cordova plugin add com.phonegap.plugins.barcodescanner11. $ cordova plugin add https://github.com/apache/cordova-plugin-

console.git#r0.2.012. $ cordova build13. $ cordova emulate android14. $ cordova run android

При этом, доступен хардкор, для страждущих. В остальном, программирование конифгами.

Page 27: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

cordova project

Текущая версия 4.0

Page 28: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

https://build.phonegap.com/plugins

plugin.xml

Page 29: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Но это можно только в phoneGap реализации. В кордове нужно поднять свой сервачок.

Page 30: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

У PhoneGap developer app есть классные тесты для нативной части плугинов.

Page 31: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Ещё есть энтерпрайз.

Page 32: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

PhoneGap Build

Немножко про сервис билдёжки приложений, как часть инфраструктуры PhoneGap

Page 33: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

https://github.com/phonegap/phonegap-start/blob/master/www/config.xml

config.xml

Page 34: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Загрузили zip с конфигом. Получили приложение. Но есть некоторые ограничения.

Page 35: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Кордова … такая кордова.Хм. А давайте в этом релизе отломаем ajax в WinPhone!

https://issues.apache.org/jira/browse/CB/

Page 36: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Браузеры...

Page 37: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

… такие браузеры. Список в 500 элементов убивает сафари.

Page 38: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

мы ведём неравный бой…

Page 39: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Но, Ipad должен умереть!http://169.254.80.80/mwBug/

И да. Забудьте про проекты с большим количеством контента под планшены на PhoneGap. Это боль.

Page 40: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

“Кроссплатформенно”

Довольно дешего и быстро

Единая Сodebase

Быстрой переход web - mobile

но…

Проблемы производительности

Проблемы недостатка памяти

Лаги отрисовки

Потеря событий

Page 41: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Покодим.

Покодить в субботу, в выходной, утром. Бесценно.

Page 42: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Спасибо!

Page 43: PhoneGap для мобильного разработчика - глубокое погружение без ОЗК

Юрий Крутилинtwitter: @yurykrutilinemail: [email protected]: krutilin