Cross platform mobile development - you tube videos

1,804 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,804
On SlideShare
0
From Embeds
0
Number of Embeds
32
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • + Corporate issues
  • App-cache / offline storage
  • … now go away and test all these frameworks!
  • + Highlight differences compared to a native UI+ Android is a second class citizen+ WP version is terrible!
  • + Titanium IDE+ (leaky) abstraction layer for UI code
  • + JavaScript compiled into native code+ Titanium IDE+ (leaky) abstraction layer for UI code
  • + Highlight differences compared to a native UI+ Android is a second class citizen+ WP version is terrible!
  • + Highlight differences compared to a native UI+ Android is a second class citizen+ WP version is terrible!
  • My personal approach for choosing a platform for a specific development is as follows: * Determine exactly what platforms you want to reach, iPhone, Android (which version numbers), BlackBerry, WindowsPhone ... * Define the requirements that you feel will be the most challenging. * Take these requirements and turn them into a few representative screens or UIs. In other words, do a little bit of your app design. * Use PropertyCross ( http://www.propertycross.com ) to help select a few frameworks that you think might work for you, in that they deliver a user experience you are happy with and that the tools / language are suitable for your development team. * Prototype your application using the frameworks you want to test out. * Place these prototypes in the hands of your users, stakeholders, developers - your wife and mother-in-law. See what the users reaction is to each framework. * Take a view on delivered user experience versus cost for each frameworks. * Choose one and go for it! Prototyping with a few frameworks might sound costly, but with so many options, each of which are quite different, I feel it is the only way to be sure you have made the right decision. Making the wrong decision can be very costly. You don't want to do a 'Facebook' and have to throw away your whole application because you are the wrong choice! Finally, in step (4) above make sure you also consider native and non HTML5-based frameworks (Xamarin, Titanium, AdobeAir). HTML5 is not the only way to make a cross-platform application! 
  • Cross platform mobile development - you tube videos

    1. 1. CROSS-PLATFORMMOBILE DEVELOPMENTLOOKING BEYOND THE HTML5 HYPE
    2. 2. OVERVIEW• Why cross-platform?• HTML5 – the hype!• Framework selection• PropertyCross• Conclusions– In easily digested bullet point form
    3. 3. WHY CROSS-PLATFORM?
    4. 4. • iPhone – Objective-C• BlackBerry – Java + BlackBerry APIs• Android – Java + Android APIs• Windows Phone – C# / Silverlight
    5. 5. SMARTPHONE SALESMillionunitsshipped
    6. 6. THE HYPE“HTML5 takes the internet bystorm”BBC News (Technology), 8 May 2012“New York Times and Burberry join theHTML5 brigade”The Guardian Technology Blog, 3 Oct 2012
    7. 7. … AND SOME ‘ANTI’-HYPE“Why HTML5 Is Still Not Ready ForPrime Time”Business Insider, 7 Nov 2012“The biggest mistake we made as acompany was betting too much onHTML5 as opposed to native”Mark Zuckerberg“Why LinkedIn dumped HTML5 & wentnative for its mobile app”Kiran Prasad
    8. 8. GARTNER HYPE CYCLEGartners 2012 Hype Cycle for Emerging Technologies
    9. 9. WHAT IS HTML5?
    10. 10. HTML5• Canvas and video tags• Local storage• Web Workers – background tasks• Web Sockets• CSS3 – layout, opacity, gradient fill …• And more ...
    11. 11. HTML5 FOR MOBILESmartphone sales exceed those of PCs for first time, Feb 2012
    12. 12. NATIVE vs. HTML5 vs. HYBRID• Native• HTML5– Accessed via the browser– Some phone features not accessible– App-like experience is possible (but not via app-store)• Hybrid– HTML5 content rendered within a browser control– Distributed through app-stores / marketplaces– Best of both worlds
    13. 13. HTML /JavaScriptApplicationPhoneAPIsPhoneAPIsAndroidiPhoneHYBRID APPS
    14. 14. HTML5 IS MANY THINGS
    15. 15. WHY LIMIT YOURSELF TO JUSTHTML5?
    16. 16. SELECTING A FRAMEWORK• Usual principles apply– Cost– Maturity– Support / community• What is the end-user experience?• What is the developer experience like?• How much code is shared?• Which platforms do I care about?… now go and start testing
    17. 17. Helping you select a cross-platform mobile framework… inspired by TodoMVC
    18. 18. • A realistic application• Create apps that are ready for app-storedistribution• Matches the native look and feel for eachplatform• Well designed / structured
    19. 19. demo time …
    20. 20. NATIVE APPLICATIONhttp://www.youtube.com/watch?v=RJXtfk43SCM
    21. 21. JQUERY MOBILE• Popular framework for creating mobilewebsites• Added Knockout, RequireJS, jquery-metro-theme• PhoneGap for ‘wrapping’
    22. 22. JQUERY MOBILEhttp://www.youtube.com/watch?v=h0TVvKPLBR4
    23. 23. NATIVE TRANSITIONShttp://www.youtube.com/watch?v=rrkG4swoNAE
    24. 24. JQUERYMOBILE TRANSITIONShttp://www.youtube.com/watch?v=lSKLtyZ2vfc
    25. 25. JQUERY MOBILE – THOUGHTS• Some UX compromises• Android uses iOS theme– Android and iOS share the same code• Windows Phone experience was verywas poor• Some friction between frameworks• Tooling was ‘standard’ web approach
    26. 26. SENCHA TOUCH• Popular commercial framework• Built using Ext JS• An end-to-end solution• Creators of Fastbook
    27. 27. SENCHA TOUCHhttp://www.youtube.com/watch?v=w2sJ84-qtl4
    28. 28. SENCHA TOUCH - THOUGHTS• ‘Thick’ UI abstraction – no HTML• Android and iOS use the same theme• Almost declarative feel to theapplication code• Impressive user experience• Steep learning curve• No Windows Phone support
    29. 29. • Commercial framework from Appcelerator• Creates a native UI• Written in JavaScript that runs in an interpreter• Titanium Studio IDE• Relies on native build tools• Abstraction layer hides Android / iOS differencesTITANIUM
    30. 30. TITANIUMhttp://www.youtube.com/watch?v=aZTCEapQZj4
    31. 31. TITANIUM - THOUGHTS• Native UI gives the best UX• Why JavaScript?• Friction due to the ‘thick stack’• Leaky abstraction• Application was developed quickly• No Windows Phone support
    32. 32. XAMARIN• C# and the .NET framework• Very thin abstraction layer• MonoTouch and MonoDevelop• Native UI
    33. 33. XAMARINhttp://www.youtube.com/watch?v=MRhAQVWS7FY
    34. 34. XAMARIN - THOUGHTS• Matches the native experience exactly• More code – yet strongly typed• Lacks a UI abstraction layer• Planning is required to optimise codesharing– You could easily end up with zero codeshared
    35. 35. AND THE REST …• Adobe Air• jQTouch• RhoMobile• KendoUI• mgwt• Intel App Framework• DXTREME• Enyo• Emy
    36. 36. CONCLUSIONS• HTML5 is a viable technology• HTML5 is a route of compromise• HTML5 is not the only cross-platformtechnology
    37. 37. CHOOSING A FRAMEWORK• Determine what is important for yourapplication– Cost? UX? Which platforms?• Use PropertyCross to narrow the selection• Prototype your application• Evaluate– Code sharing– Developer experience– User experience
    38. 38. CROSS-PLATFORMMOBILE DEVELOPMENTLOOKING BEYOND THE HTML5 HYPEColin Eberhardt - @ColinEberhardtScott Logic, ShinobiControls

    ×