Successfully reported this slideshow.

Welcome to the mobile galaxy!

1

Share

Upcoming SlideShare
Gestire i pdf con iOS
Gestire i pdf con iOS
Loading in …3
×
1 of 50
1 of 50

Welcome to the mobile galaxy!

1

Share

Download to read offline

Lo sviluppo su mobile si arricchisce ogni anno di nuove piattaforme e linguaggi di programmazione. Attraverso un excursus storico verrà analizzata l'evoluzione del settore mobile cercando di chiarire meglio per gli sviluppatori quali sono oggi i linguaggi, i sistemi operativi e i tool utilizzati per lo sviluppo sulle diverse piattaforme. Condiamo il tutto con una serie di consigli pratici sullo sviluppo mobile cercando di prevedere l'evoluzione a venire del settore.

Lo sviluppo su mobile si arricchisce ogni anno di nuove piattaforme e linguaggi di programmazione. Attraverso un excursus storico verrà analizzata l'evoluzione del settore mobile cercando di chiarire meglio per gli sviluppatori quali sono oggi i linguaggi, i sistemi operativi e i tool utilizzati per lo sviluppo sulle diverse piattaforme. Condiamo il tutto con una serie di consigli pratici sullo sviluppo mobile cercando di prevedere l'evoluzione a venire del settore.

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

Welcome to the mobile galaxy!

  1. 1. Welcome to the mobile galaxy! Maurizio Moriconi maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  2. 2. Un pò di storia... • Prima chiamata a St. Louis nel Missouri (USA) il 7 Giugno 1946 da un sistema di telefonia sviluppato dai Bell Laboratories. • Prima chiamata da un dispositivo mobile fatta con un Motorola nel 3 Aprile del1973 da Martin Cooper (considerato l’inventore della telefonia mobile) • Ispirazione da Star Trek :) Maurizio Moriconi 2 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  3. 3. Primo sms della storia... • Vodafone GSM Network, UK • 3 Dicembre 1992 • Il testo del messaggio era: “Merry Christmas” Maurizio Moriconi 3 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  4. 4. Evoluzione tecnologica 1993 Primo smartphone (IBM Simon) 1994 Bluetooth (Ericsson) 1998 Primo schermo a colori 2000 Primo sistema operativo per smartphone (Symbian su Ericsson R380) 2001 Primo touch screen ‘evoluto’ 2006 Primo device con Wi-fi (Samsung SGH-P200) 2007 Primi dispositivi con GPS integrato 2011 Primo smartphone FullHD Maurizio Moriconi 4 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  5. 5. Timeline OS per smartphone 1996 Palm lancia Palm OS 1.0 1997 Palm OS 2.0 1998 Palm OS 3.0 2000 Pocket PC 2000 2001 Palm OS 4.0 e Pocket PC 2002 Symbian 6.0, 6.1 Maurizio Moriconi 5 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  6. 6. Gli anni di windows mobile... 2003 Windows Mobile 2003 2003 Windows Mobile 2003 SE, Palm OS Cobalt 2005 Windows Mobile 5, BlackBerry OS 4.1 Google compra Android Inc 2007 Windows Mobile 6, BlackBerry OS 4.2 Maurizio Moriconi 6 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  7. 7. Arrivano iPhone OS ed Android! 2007 iPhone OS 1.0 2008 iPhone OS 2.0 Android 1.0 Symbian^1 (Series 60 5th Edition) BlackBerry OS 4.5, Windows Mobile 6.1 Maurizio Moriconi 7 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  8. 8. 2009: OS World war :) BlackBerry OS 5.0, Windows Mobile 6.5 Android 1.1 1.5 (Cupcake) 1.6 (Donut) 2.0 / 2.1 (Eclair) Samsung Bada 1.0 iPhone OS 3.0 Web OS 1.0 Maurizio Moriconi 8 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  9. 9. 2010: torna Windows Phone... iOS 4.0 BlackBerry OS 6 BlackBerry Tablet OS Windows Phone 7 Android 2.2 (Froyo) 2.3 (GingerBread) Symbian^2 e Symbian^3 Web OS 2.0 Meego Maurizio Moriconi 9 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  10. 10. 2011: L’anno dei tablet iOS 5.0 Android 3.0 (HoneyComb), 3.1, 3.2 Android 4.0 (Ice Cream Sandwich) Web OS 3.0 Symbian Anna e Belle Blackberry OS 7 Blackberry Tablet (Playbook) OS 2.0 Maurizio Moriconi 10 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  11. 11. Sviluppo su Mobile Mobile != Desktop Mobile Web != Desktop Web Rispetto al passato non ci sono più limitazioni hardware!!! Bisogna focalizzarsi principalmente su: - quantità di dati scaricati - uso della batteria - schermo - nuove possibilità: multi-touch, gps, fotocamera, accellerometro, realtà aumentata Maurizio Moriconi 11 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  12. 12. Come sviluppiamo su mobile? ✓App native ✓Widgets ✓App cross-platform Maurizio Moriconi 12 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  13. 13. Sviluppo di app Native ✓ Diversi linguaggi di programmazione ✓ Diversi tool di sviluppo ✓ Diversa esperienza d’uso (UX = User eXperience) Applicazioni ottimizzate per la piattaforma! Maurizio Moriconi 13 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  14. 14. JavaME Write once, run anywhere?? No! Write once, port everywhere :( Maurizio Moriconi 14 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  15. 15. JavaME: IDE ed SDK • Sviluppo su: Windows, Mac OS X, Linux • Eclipse Pulsar • NetBeans • SDK: J2ME Wireless Toolkit 3.0.5 Maurizio Moriconi 15 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  16. 16. The next billion... • Nokia Series 40 • 1.5 miliardi di device • Nokia SDK 1.1 for Java – In-App purchase API – Nokia Touch and Type Gesture API – Nokia Touch and Type Animator API – Nokia UI API Maurizio Moriconi 16 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  17. 17. http://www.developer.nokia.com/Develop/Series_40 Maurizio Moriconi 17 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  18. 18. Blackberry OS • 2 possibilità: • Blackberry Java (JavaME) • WebWorks (HTML 5) • Sviluppo su: • Windows • Mac OS X (no simulatore) Maurizio Moriconi 18 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  19. 19. Blackberry OS • SDK per JavaME – BlackBerry Java Plug-in for Eclipse v 1.5 • WebWorks – HTML 5 – Ripple Emulator 0.9.1 beta Maurizio Moriconi 19 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  20. 20. Blackberry Tablet OS / BB 10 • CC ++ Native SDK 2.0 • HTML 5 WebWorks • Blackberry Java • Java Android Runtime • Adobe AIR (Blackberry TabletOS SDK for Abode AIR 2.0) • Open Source Components (OpenAL, boost, Box2d, Bullet Physics, Cocos2d-X, Lua, Qt, SDL) Maurizio Moriconi 20 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  21. 21. http://developer.blackberry.com Maurizio Moriconi 21 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  22. 22. Symbian / Meego • Sviluppo su: Windows, Mac OS X, Linux • Qt SDK 1.2 • Qt si pronuncia “cute” • Linguaggio C/C++ facilitato dalle Qt • QML (Qt Quick) Maurizio Moriconi 22 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  23. 23. http://www.developer.nokia.com/Develop/Qt Maurizio Moriconi 23 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  24. 24. Bada • Sviluppo solo su Windows • bada SDK 2.0.5 – basato su Eclipse CDT e JSDT • Linguaggio: C/C ++ con delle eccezioni • Supporta Flash (Flash Lite 4 e ActionScript 3.0) • Supporta WAC widgets (HTML, Javascript, CSS) Maurizio Moriconi 24 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  25. 25. http://developer.bada.com Maurizio Moriconi 25 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  26. 26. iOS • Sviluppo solo su Mac OS X (Intel-based) • iOS SDK 5.1 • Linguaggio: Objective-C, C • IDE: Xcode 4.x • Possibilità di usare HTML5 Maurizio Moriconi 26 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  27. 27. Terze Parti • Unreal Development Toolkit (Epic) http://www.udk.com • MonoTouch (C# e .NET) http://www.xamarin.com/monotouch • DragonFire SDK (Visual Studio C/C++) http://www.dragonfiresdk.com • Unity 3 http://unity3d.com • Corona SDK http://www.anscamobile.com/corona • Marmalade SDK 5.2 http://www.madewithmarmalade.com/ • ... Maurizio Moriconi 27 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  28. 28. Frammentazione • Risoluzioni – iPhone/iPod Touch (320x480 vs 480x960) – iPad (768x1024 vs 1536x2048) • Versioni del sistema operativo – i device vengono aggiornati dagli utenti • 1 settimana per aggiornare il 25% • < 6 settimane per aggiornare il 50% – pochi device obsoleti (iPhone 2 e 3G) Maurizio Moriconi 28 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  29. 29. http://developer.apple.com/iphone Maurizio Moriconi 29 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  30. 30. Android • Sviluppo su Windows, Mac OS X, Linux • Android SDK 4.0.x • IDE: Eclipse • Linguaggio: Java Maurizio Moriconi 30 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  31. 31. NDK • Possibilità di sviluppare in C,C++ • Tra le API nativi stabili supportate troviamo: – libc e libm headers – JNI headers – libz headers – OpenGL ES 1.1 e 2.0 (da Android 2.0) Maurizio Moriconi 31 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  32. 32. Frammentazione delle versioni Platform Codename API Level Distribution Android 1.5 CupCake 3 0.4% Android 1.6 Donut 4 0.8% Android 2.1 Eclair 7 6.6% Android 2.2 Froyo 8 25.3% Android 2.3.x Gingerbread 9 - 10 62.0% Android 3.x Honeycomb 11 - 13 3.3% Android 4.0.x Ice Cream Sandwich 14 - 15 1.6% Dati aggiornati al 13/03/2012 (Fonte http://developer.android.com) Maurizio Moriconi 32 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  33. 33. Frammentazione risoluzioni ldpi mdpi hdpi xhdpi small 1.7% 2.4% normal 0.7% 18.5% 66.3% 2.5% large 0.2% 2.8% xlarge 4.9% Dati aggiornati al 13/03/2012 (Fonte http://developer.android.com) Maurizio Moriconi 33 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  34. 34. Frammentazione risoluzioni ldpi (120) mdpi (160) hdpi (240) xhdpi (320) QVGA (240x320) 480x640 Small screen WQVGA400 (240x400) HVGA (320x480) WVGA800 (480x800) 640x960 Normal screen WQVGA432 (240x432) WVGA854 (480x854) 600x1024 WVGA800 (480x800) WVGA800* (480x800) Large screen WVGA854 (480x854) WVGA854* (480x854) 600x1024 1024x600 WXGA (1280x800) 1536x1152 2048x1536 Extra Large 1024x768 1920x1152 2560x1536 Screen 1280x768 1920x1200 2560x1600 Dati aggiornati al 13/03/2012 (Fonte http://developer.android.com) Maurizio Moriconi 34 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  35. 35. http://developer.android.com Maurizio Moriconi 35 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  36. 36. Windows Phone • Sviluppo su Windows • Windows Phone 7.1 SDK • IDE: Microsoft Visual Studio, Expression Blend • Linguaggio: C# o VB.NET • Applicazioni – Silverlight – XNA (anche per Xbox 360) – HTML5 (con PhoneGap) Maurizio Moriconi 36 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  37. 37. Frammentazione • 2 versioni: Windows Phone 7.0 e 7.5 • Hardware obbligatorio: – 3 bottoni (Start, Back, Search (invoca sempre Bing)) – WVGA (480x800) display capacitivo (4 touch) – connessione Wi-fi o dati cellulare – 256 Mb o più di Ram , 8 GB o più di flash storage – A-GPS ed accellerometro • Hardware facoltativo: – Compass e giroscopio – Camera (frontale e/o posteriore) Maurizio Moriconi 37 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  38. 38. http://create.msdn.com Maurizio Moriconi 38 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  39. 39. Mobile Widgets • Piccolo sito web installato su device • Più veloci delle web-app • Somigliano ad app native • Possono girare sulla home del device • Scritti in Html/Javascript/Css (un html solo index.htm) • Framework utilizzabili: – JQuery, MooTools, YUI, Dojo, Guarana Maurizio Moriconi 39 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  40. 40. Widgets Standards • W3C – http://www.w3.org/TR/widgets • JIL / WAC (Wholesale Applications Community) • Nokia WRT (Widgets Run Time) • BlackBerry WebWorks • Vodafone 360 Maurizio Moriconi 40 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  41. 41. App Cross-Platform • 120 app store differenti!! Linguaggio Piattaforme Actionscript Blackberry Playbook OS, dispositivi con FlashLite C / C++ Bada, Symbian, Windows Phone, iOS, Android (NDK)... C# Windows Phone Objective-C iOS Java Android, JavaME Blackberry, Symbian, dispositivi meno recenti Javascript Blackberry, webOS, Mozilla Boot-to-Gecko Maurizio Moriconi 41 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  42. 42. App Cross-Platform • Varie possibilità: – Web technologies • web-view incorporate in app native – Interpretation • collegamento con API reali ma linguaggio nativo diverso – Cross compilation • scrivi in un linguaggio, compili su più piattaforme Maurizio Moriconi 42 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  43. 43. Web Technologies Maurizio Moriconi 43 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  44. 44. Interpretation & Cross-compilation • Appcelerator Titanium • PhoneGap (Javascript) • Rhodes 3.0 (Ruby) • Corona • Marmelade • MoSync • appMobi Maurizio Moriconi 44 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  45. 45. Quale scegliere? In Europa... 20,7% Android iOS Symbian RIM Microsoft 31,3% Altri 30,0% Market Share Mobile Europa Dic 2011 (dati comScore) 3,4% 5,2% 9,4% Maurizio Moriconi 45 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  46. 46. Quale scegliere? In Italia... Android 15,8% iOS 52,8% Symbian RIM Microsoft Altri 17,9% 1,6% Market Share Mobile Italia Dic 2011 (dati comScore) 7,0% 4,9% Maurizio Moriconi 46 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  47. 47. Uso su web in Italia nel 2012... 48,4% Android iOS Symbian Microsoft 30,5% Altri Stat Counter (gs.statcounter.com) Italia 2012 6,0% 1,2% 13,9% Maurizio Moriconi 47 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  48. 48. Quale scegliere?? Piattaforma mesi ttm Piattaforma % developer Android 5.7 Android 67% Blackberry 6.1 iOS 59% iOS 6.8 mobile web 56% mobile web 8.7 Java ME 46% Symbian 9.8 Blackberry 45% Java ME 10.6 www.DeveloperEconomics.com (2011 Vision Mobile) Maurizio Moriconi maurizio.moriconi@mobilesoft.it - Mobilesoft 48 domenica 25 marzo 12
  49. 49. http://www.wipconnector.com/ Maurizio Moriconi 49 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  50. 50. Grazie! Maurizio Moriconi • CTO presso Mobilesoft • Co-founder • Mobile Developer • Main Developer http://www.linkedin.com/in/bugman @bugman79 http://www.facebook.com/maurizio.moriconi Maurizio Moriconi 50 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12

×