Cross-platform tools for mobile application development

4,956 views
4,586 views

Published on

Second #thesis12 presentation.

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

No Downloads
Views
Total views
4,956
On SlideShare
0
From Embeds
0
Number of Embeds
442
Actions
Shares
0
Downloads
0
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

Cross-platform tools for mobile application development

  1. 1. Comparative study of tools for cross-platform mobile application development Bert Outtier Begeleider: Gonzalo Para Promotor: Erik Duval 1 i.s.m. Capgemini Belgiumdinsdag 26 maart 13 1
  2. 2. Contents • Context - Problem - Comparison criteria - Methods • Appcelerator Titanium • Xamarin.iOS & Xamarin.Android • Conclusion 2dinsdag 26 maart 13 2
  3. 3. Problem • Fragmentation • Time-to-market • Costs • Code reuse • Skill reuse ➔ Cross-Platform tools 3dinsdag 26 maart 13 3
  4. 4. Comparison criteria 1. Costs 2. Platform Support 3. Access to hardware and device API’s 4. Performance 5. Learning curve 6. Productivity 7. UI 8. Tools, debugging and testing 9. (Future) Supportdinsdag 26 maart 13 4
  5. 5. Methods • Native frameworks only • Enterprise context • Proof-Of-Concept application • Develop POC in each tool + nativedinsdag 26 maart 13 5
  6. 6. Cross-Platform native Frameworks Xamarin.iOS Appcelerator Titanium Xamarin.Androiddinsdag 26 maart 13 6
  7. 7. Appcelerator Titanium • JavaScript • Interpreter • UI : uses native elements • iOS, Android, Windows, Blackberry, HTML5 • Titanium Studio IDE 7dinsdag 26 maart 13 7
  8. 8. Xamarin.iOS & Xamarin.Android • C# • Mono • UI : uses native elements • iOS, Android (Windows Phone) • Xamarin Studio IDE,Visual Studio 8dinsdag 26 maart 13 8
  9. 9. 1. Costs ✓Free - $299 - $999 - $1899 ✓Payed support - per developer, per platform, per year ✓Component store ✓Component store 9dinsdag 26 maart 13 9
  10. 10. 2. Platform support • iOS • iOS • Android • Android • Web (HTML5) • Mac • Windows • (Windows Phone) • Blackberry 10dinsdag 26 maart 13 10
  11. 11. 3. Access to native API’s ✓Very good support ✓Quick updates after OS updates ✓Good documentation 11dinsdag 26 maart 13 11
  12. 12. 4. Performance - Common problems: Slow ✓difference with native No performance animations, lagged code scrolling, slow resuming ‣ iOS : AOT compiler • Due to interpreter? ‣ Android : JIT compiler 12dinsdag 26 maart 13 12
  13. 13. Flexibility vs Performance Flexibility •Language •API •Cross platform Performance 1 (native) •Speed •Native UX •Native capabilities 13dinsdag 26 maart 13 13
  14. 14. Measure performance • What? (FPS, time, ...) • Case: scrolling long lists? • Are there accurate tools? • Where is my original (JS) code? (Instruments, DDMS) 14dinsdag 26 maart 13 14
  15. 15. 5. Learning curve ✓JavaScript • C# ✓(Eclipse based) IDE • Stand-alone IDE ✓and tutorials Good documentation ✓Good tutorials, documentation and design guidelines ➡Good Learning curve 15dinsdag 26 maart 13 15
  16. 16. 6. Productivity - Complexity ↑, productivity ↓ ✓Autocompletion - Runtime errors ✓Strong typing - Runs on iOS ≠ Runs on ✓Builtin UI designer Android ✓≈ native code - Maintainability 16dinsdag 26 maart 13 16
  17. 17. 6. Productivity Smartphone Tablet Time Appcelerator Titanium 60% 0% 120h Xamarin.iOS Xamarin.Android 90% 90% 104h iOS 50% 50% 27h Android 60% 60% 22h 17dinsdag 26 maart 13 17
  18. 18. 7. UI Write once, run anywhere Embrace platform differences - UI in JavaScript ✓native UI tools ✓Cross-platform UI API’s - Platform specific UI API’s 18dinsdag 26 maart 13 18
  19. 19. Problems - Slow animations - UI glitches (demo) - UI Code mixed with functional code - Workarounds for API limitations 19dinsdag 26 maart 13 19
  20. 20. Solutions • Alloy (MVC) • Make UI platform specific 20dinsdag 26 maart 13 20
  21. 21. Problems - UI is platform specific - More work 21dinsdag 26 maart 13 21
  22. 22. 8. Tools ✓Titanium Studio IDE ✓Studio Studio,Visual Xamarin - Poor autocompletion ✓Strong autocompletion ✓Builtin debugger ✓Builtin debugger - Runtime errors ✓Xcode IB / UI designer ✓Unit testing 22dinsdag 26 maart 13 22
  23. 23. 9. (Future) support ✓> $50 million investments ✓Several investments ✓> 425 000 active users ✓000000 customers, 230 12 active developers ✓employees Private company, 135 ✓62 employees 23dinsdag 26 maart 13 23
  24. 24. Conclusion 1. Costs 2. Platform Support 3. Access to native API’s 4. Performance wip wip Learning curve ! 6. Productiviy 7. UI ! ! 8. Tools, debugging and testing ! 9. (Future) support 24dinsdag 26 maart 13 24
  25. 25. Planning april - 17 mei : thesistekst 1 april - 15 april : afwerking POC 15 april - 30 april : (performantie) testing Algemeen: customization? 25dinsdag 26 maart 13 25
  26. 26. Statistics • Twitter: 62 • Blog posts: 12 • Blog comments: 6 • Uren: 426u 26dinsdag 26 maart 13 26
  27. 27. Statistics Implementatie Lezen Meetings Presentatie Reflectie Schrijven Social 0 15 30 45 60 27dinsdag 26 maart 13 27
  28. 28. Zelfevaluatie 14 28dinsdag 26 maart 13 28
  29. 29. Thank you! 29dinsdag 26 maart 13 29

×