Mobile frameworks and Titanium specifically
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Mobile frameworks and Titanium specifically

on

  • 276 views

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

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

Statistics

Views

Total Views
276
Views on SlideShare
274
Embed Views
2

Actions

Likes
1
Downloads
5
Comments
0

1 Embed 2

http://www.slideee.com 2

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Mobile frameworks and Titanium specifically Presentation Transcript

  • 1. THE FUTURE ISTHE FUTURE IS MOBILE
  • 2. Introduction
  • 3. The "App gold rush" number of apps per platform
  • 4. Mobile was easy in 2007
  • 5. Still an Apple world in 2008
  • 6. 2009 Android came to town
  • 7. 2010 ● The iPad hit ● So did Android ● In December mobile out sold desktop
  • 8. 2012 Mobile chaos reigns
  • 9. And then you have your customers...
  • 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. So many platform, so little time Java Objective-C C++, C# HTML5 Java C++
  • 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. Time to reflect The marviq story so far ...
  • 14. Cross platform to choose from 2000 today 100+ Source: VisionMobile 2012
  • 15. Diversity of tools for all sorts of developers, apps and mobile platforms Source: VisionMobile 2012
  • 16. How do you choose?
  • 17. Putting the iq back in marviq Pushing marviq forward
  • 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. HTML5 is pitched as the future of mobile apps
  • 20. But what is HTML5, really?
  • 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. HTML5 is fragmented across platforms html5test.com (April 2012)
  • 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. Marviq, mobile and more Time for a new strategy
  • 25. The need for a mobile strategy Presentation Logic Data Yesterday 3-tier centralized web architecture Today Cloud connected app centric modal
  • 26. How to implement the strategy?
  • 27. Bridging the gap
  • 28. Native app development The missing link
  • 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. Reach Performance
  • 31. Future friendly Right now
  • 32. Because it's all JavaScript Foundation of reuse
  • 33. Modular Application Development MAT goes MAD
  • 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. 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. 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. Enter Appcelerator
  • 38. Titanium SDK Titanium Studio Cloud services Analytics Support Appcelerator
  • 39. Titanium SDK JavaScript runtime to run native apps Cross device UI (not 100%) Networking Database / XML / Json
  • 40. Yup, it's Eclipse Titanium Studio
  • 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. Titanium marketplace
  • 43. Cloud services
  • 44. Appcelerator ecosystem
  • 45. Appcelerator is modular CommonJS based
  • 46. function Car( params ) {} module.exports = Car; Modules in Appcelerator var Car = require( "Car" ) , ferrari = new Car(); A module: How to use:
  • 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. function Car( params ) {} function drive = function() { console.log( "driving" ); } exports.drive = drive; module.exports = Car; Modules in Appcelerator
  • 49. function Car( params ) {} exports.exports = Car; Car.prototype.drive = function() { console.log( "driving" ); } Modules in Appcelerator
  • 50. More to follow...
  • 51. Labs Start your editors...