Mobile frameworks and Titanium specifically

514 views

Published on

A case for the importance of mobile frameworks like PhoneGap and Titanium, and a deeper look into how Titanium works.

Published in: Software, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
514
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
8
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Mobile frameworks and Titanium specifically

  1. 1. THE FUTURE ISTHE FUTURE IS MOBILE
  2. 2. Introduction
  3. 3. The "App gold rush" number of apps per platform
  4. 4. Mobile was easy in 2007
  5. 5. Still an Apple world in 2008
  6. 6. 2009 Android came to town
  7. 7. 2010 ● The iPad hit ● So did Android ● In December mobile out sold desktop
  8. 8. 2012 Mobile chaos reigns
  9. 9. And then you have your customers...
  10. 10. that's great, but.... Source: Forrester Research Forrester Research: "Most apps take at least six months of full-time work and cost between $20,000 and $150,000 to develop" padgadget.com: "For a nice but simple app, including design work, back-end services and project management your total budget is around $35,000
  11. 11. So many platform, so little time Java Objective-C C++, C# HTML5 Java C++
  12. 12. TVTabletPC It's no longer about smartphones Smartphone Mac computers Chrome books iPhone iPad Apple TV Android Android tablets Google TV Windows Windows Phone Windows 8 Xbox
  13. 13. Time to reflect The marviq story so far ...
  14. 14. Cross platform to choose from 2000 today 100+ Source: VisionMobile 2012
  15. 15. Diversity of tools for all sorts of developers, apps and mobile platforms Source: VisionMobile 2012
  16. 16. How do you choose?
  17. 17. Putting the iq back in marviq Pushing marviq forward
  18. 18. "Native developers" Create apps using programming languages and tools specific to platforms 300K "Web developers" Create apps using HTML/CSS/JavaScript Less dependent on specific programming skills 3 million Source: VisionMobile 2012
  19. 19. HTML5 is pitched as the future of mobile apps
  20. 20. But what is HTML5, really?
  21. 21. HTML5 is just past the peak of expectations ● Fragmentation across platforms (iOS, Android, BlackBerry, Windows Phone) ● Challenges to compete with native user experience ● Lack of distribution channels and monetisation for web apps
  22. 22. HTML5 is fragmented across platforms html5test.com (April 2012)
  23. 23. Andrew Betts of Assanka on app.ft.com: "It took a full-time team of 3 developers at Assanka 8 months to launch on iPad, and that team a further 4 months to bug-fix the iPad and ready for distribution to Android tables."
  24. 24. Marviq, mobile and more Time for a new strategy
  25. 25. The need for a mobile strategy Presentation Logic Data Yesterday 3-tier centralized web architecture Today Cloud connected app centric modal
  26. 26. How to implement the strategy?
  27. 27. Bridging the gap
  28. 28. Native app development The missing link
  29. 29. Why native? ● Fragmentation across platforms (iOS, Android, BlackBerry, Windows Phone) ● Challenges to compete with native user experience ● Lack of distribution channels and monetisation for web apps
  30. 30. Reach Performance
  31. 31. Future friendly Right now
  32. 32. Because it's all JavaScript Foundation of reuse
  33. 33. Modular Application Development MAT goes MAD
  34. 34. Modular code advantages ● Reusable with multiple tools ● Tried & tested code ● Easier to test ● Easier to document ● Resource scaling ● Performance (non-blocking) ● Optimisable (less code)
  35. 35. PresentationFunctionalcore localStorage DOM Utilities Data formatters Data objects Data caching XML Utilities Phone utilities DOM Utilities HTML Fragments Components HTML Fragments Process handlers Service handlers XHR XDM Widgets CSS Templates Widgets CSS Templates JSON UtilitiesData stubs Unit tests View panes Formatters Formatters Controls Web portal Native mobile HTML Mobile
  36. 36. MAD Technology Functional core: ● requireJS ● promises / XHR / XDM ● XPath / XML Dom HTML5 Web: ● jQuery / jQuery UI widgets ● moment.js / accouting.js / ?? ● MAT / SASS / HAML / ?? Native mobile: ● Appcelerator HTML5 mobile: ● PhoneGap ● jQueryMobile / Twitter bootstrap / Vanilla HTML + JS / ??
  37. 37. Enter Appcelerator
  38. 38. Titanium SDK Titanium Studio Cloud services Analytics Support Appcelerator
  39. 39. Titanium SDK JavaScript runtime to run native apps Cross device UI (not 100%) Networking Database / XML / Json
  40. 40. Yup, it's Eclipse Titanium Studio
  41. 41. Eclipse / Aptana based Helps install and manage SDK's Can directly launch emulators / devices Code completion and documentation Integrated developer portal Titanium Studio
  42. 42. Titanium marketplace
  43. 43. Cloud services
  44. 44. Appcelerator ecosystem
  45. 45. Appcelerator is modular CommonJS based
  46. 46. function Car( params ) {} module.exports = Car; Modules in Appcelerator var Car = require( "Car" ) , ferrari = new Car(); A module: How to use:
  47. 47. function Car( params ) {} exports.drive = function() { console.log( "driving" ); } module.exports = Car; Modules in Appcelerator var Car = require( "Car" ) , ferrari = new Car( { color: "red" } ); ferrari.drive();
  48. 48. function Car( params ) {} function drive = function() { console.log( "driving" ); } exports.drive = drive; module.exports = Car; Modules in Appcelerator
  49. 49. function Car( params ) {} exports.exports = Car; Car.prototype.drive = function() { console.log( "driving" ); } Modules in Appcelerator
  50. 50. More to follow...
  51. 51. Labs Start your editors...

×