Your SlideShare is downloading. ×
0
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
The Phonegap Architecture
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

The Phonegap Architecture

983

Published on

Architecture evolution

Architecture evolution

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
983
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
35
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Situatieschets 2009: smartphones en tablets komen op, maarerzijnveelplatformen (toenBada, Symbian, Windows Mobile, Android kont op, iPhone 3G). Nergensiets uniform, niemandweetwaar het naatoegaat. Moeilijkomals developer tekiezen, liefstallestegelijk.
  • Visie en missiePhonegaptoen (samen met commercieel aspect)Adobe AIR kwam pas in 2010 naartelefoon
  • Uitleg portability en wat het voor PG betekende
  • Architectuuroverzicht
  • Probleemstelleng:niet pluggable, veelverschillendeversies
  • Uitleg portability en wat het voor PG betekende
  • Toelatenomeigenplugins toe tevoegen en functionaliteit in interne modules steken
  • Architectuuroverzichtfase 2 – pluginstoegevoegd
  • Architectuuroverzichtfase 2 – pluginstoegevoegd
  • OvernameNitobi door Adobe, Grotere community
  • Nu is bijnaalleseenexterneplugin
  • Architectuuroverzichtfase 3 – unified javascript layer
  • Architectuuroverzichtfase 3 – unified javascript layer
  • Transcript

    • 1. Case studyPhoneGap / CordovaJolien CoenraetsJolien.coenraets@intec.ugent.bewww.ibcn.intec.ugent.beInternet Based Communication Networks and Services (IBCN)Department of Information Technology (INTEC)Ghent University - IBBTDepartment of Information Technology – Internet Based Communication Networks and Services (IBCN)
    • 2. Introduction = open source solution for building cross-platform mobile native apps with standards-based Web technologies like HTML, JavaScript, CSSDepartment of Information Technology – Internet Based Communication Networks and Services (IBCN) 2
    • 3. Introduction Accelerometer Camera Compass Contacts File Geolocation Media Network Notifications StorageDepartment of Information Technology – Internet Based Communication Networks and Services (IBCN) 3
    • 4. Need Lots of differences: •Programming languages •Screen sizes, resolutions •Performance •Behavior •Buttons Different codebasesJava = hard to maintain Java C# Objective C 1 thing in common: a browser Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 4
    • 5. Vision One code base to rule them all!Goal Make native functions available for web applications Create Adobe AIR for mobile applicationsBusiness model Open source platform Money from training by NitobiProof of concept won several prices continue !!! Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 5
    • 6. 2009 - 2010Phase 1 Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 6
    • 7. Building the architecture, phase 1Requirements Cross-platform Access native functions from within a webkit view No native code needed for developers of apps Portability (modifiability of the platform) Layers to hide information Interface towards app Restrict communication paths Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 7
    • 8. Building the architecture, phase 1 HTML CSS Your app JavaScriptJavaScript JavaScript JavaScript JavaScript PG Android iOS WPhone BlackBerry Java PG code PG code PG code PG code Script Native Native Native Native PG Android iOS WPhone BlackBerry PG code Native PG code PG code PG code OS Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 8
    • 9. Creating a business, phase 1Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 9
    • 10. 2010 - 2011Phase 2 Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 10
    • 11. The community growsThey wanted thisBut they got this Problem Adjusting the code resulted in conflicts and made it impossible to merge the code Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 11
    • 12. Building the architecture, phase 2Requirements Developers can create their own extensions Easily add support for new features Easily update certain feature without affecting other code Modifiability Add plugins for extra functionality Create internal components Binding at runtime Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 12
    • 13. Building the architecture, phase 2 PhoneGap PhoneGap code codeCamera Camera Storage Facebook StorageAccelerometer PayPal Accelerometer Device Device Adds Notification Notification Twitter Media Media Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 13
    • 14. Building the architecture, phase 2 HTML CSS Your app JavaScriptAndroid PG iOS PG WP PG BB PG PG Java ScriptAndroid PG iOS PG WP PG BB PG PG Native OS Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 14
    • 15. Building the architecture, phase 2 HTML CSS Your app JavaScriptAndroid PG iOS PG WP PG BB PG PG Java ScriptAndroid PG iOS PG WP PG BB PG PG Native OS Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 15
    • 16. Creating a business, phase 2 600 000+downloads Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 16
    • 17. 2011 - …Phase 3 Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 17
    • 18. Creating a business, phase 3Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 18
    • 19. The community growsNew people join the community, looking for an easy solutionBut: complicated build process, different for each platform some API’s not consistent between different platforms little documentation, often outdated People drop out of the project Deteriorating reputation of usability and stability Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 19
    • 20. Building the architecture, phase 3Requirements Easier workflow (create, develop, build) Lower learning curve Consistent API between platforms Usability Improve documentation Improve build process Improve PG JS source code Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 20
    • 21. Building the architecture, phase 2 Media PhoneGap code Camera Camera Facebook Facebook PhoneGap code Storage PayPal PayPalAccelerometer Storage Device Adds Adds Notification Twitter Twitter Accelerometer Media Device Notification Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 21
    • 22. Building the architecture, phase 3 HTML CSS Your app JavaScript PG JavaAndroid iOS PG WP PG BB PG ScriptPGAndroid PG iOS PG WP PG BB PG PG Native OS Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 22
    • 23. Building the architecture, phase 3 HTML CSS Your app JavaScript PhoneGap JavaScript PG JavaAndroid iOS PG WP PG BB PG ScriptPGAndroid PG iOS PG WP PG BB PG PG Native OS Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 23
    • 24. Current status 100 000+ downloads / monthDepartment of Information Technology – Internet Based Communication Networks and Services (IBCN) 24
    • 25. REMARKS Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 25
    • 26. RemarksAn architecture can change … but it is better to have it right the first time. Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 26
    • 27. Refactors Different JS files to one Change project structure = SVN conflicts Different plugin structure Outdated plugins, rewrite all your plugins API changes Introducing bugs, outdated documentation or information Name changes Find and replace ‘Phonegap’ to ‘Cordova’ Developer’s nightmare Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 27
    • 28. Find partnersDepartment of Information Technology – Internet Based Communication Networks and Services (IBCN) 28
    • 29. No silver bullet ≠ platform that every app should useAdvantages: Disadvantages: Quick  Javascript debugging Scripting languages  Performance Phonegap build  ‘Almost’ native Department of Information Technology – Internet Based Communication Networks and Services (IBCN) 29
    • 30. Questions ?Jolien Coenraetsjolien.coenraets@intec.ugent.bewww.ibcn.intec.ugent.beInternet Based Communication Networks and Services (IBCN)Department of Information Technology (INTEC)Ghent University - IBBTDepartment of Information Technology – Internet Based Communication Networks and Services (IBCN)

    ×