L’environnement du
développement mobile
iOS & Android
Omer Ozkul / Christopher Saez
Juillet 2015 - Mis à jour Janvier 2016...
Sommaire
• Vue d’ensemble des deux écosystèmes
• La plateforme iOS
• le SDK iOS
• Gestionnaire de dépendances CocoaPods
• ...
Vue d’ensemble des
deux écosystèmes
iOS
• Initialement iPhone OS, crée en 2007
• Dernière version stable iOS 9.2, iOS 9.3 en bêta
• Utilisé sur iPhone, iPod, ...
iOS
iOS très peu fragmenté.
Tailles d’écrans relativement
fragmenté depuis 2014 avec
la gamme iPhone6, Apple
Watch et déso...
Android
• Android Open Source Project + Services(Google,
Samsung ou les forks chinois)
• Crée en 2008 et racheté par Googl...
Android
Android OS relativement
fragmenté.
Tailles d’écrans beaucoup
fragmentées.
2.3 4.0 4,1-4,2-4,3
4.4 5,0-5,1 6.0
La plateforme iOS
Le SDK iOS
SDK iOS
L’IDE Xcode
• Crée en 2003
• Développé par Apple seulement sur MacOSX.
• Regroupe l’Interface builder pour faire l...
Aperçu de project builder
Aperçu d’interface builder
SDK iOS
Le simulateur
Xcode - gestionnaire de
dépendances CocoaPods
• Crée en Sept 2011, Open Source
• En version 0.39.
• La plus grande communa...
Les langages utilisés
(Applications natives)
Objective-c et Swift
• Objective-c
• Crée en 1983 (pas très moderne).
• Extension du C et inspiré de SmallTalk.
• Orienté ...
La plateforme Android
Les IDE Android
Eclipse
• Lourd, vieux, plante
• Officiellement abandonné par Google depuis
Android Lollipop
Android Studio
• Version stable depuis Android Lollipop
• Moderne, complétion plus puissante
• Socle Intellij (phpstorm, p...
Le SDK Android
Composition du SDK
• IDE
• Les API Android, la bibliothèque JAVA standard
• Les commandes line tools
• Le NDK (native déve...
Un développement
pensé pour tous les
périphériques
Une multitude de
périphérique de toutes tailles
• Tailles d’écran fragmentés (moins maintenant
qu’avant)
• Versions fragme...
Une interface pour tous les
devices
• Le SDK Android a été pensé pour que les
développeurs créent facilement une interface...
Les contraintes du
développement mobile
• Temps de compilation qui augmente avec la taille du projet (réduit sous Android ...
Annexes
• https://developer.apple.com/support/app-store/
• https://itunes.apple.com/fr/app/xcode/
id497799835?mt=12
• http...
Auteurs
• Christopher Saez: Mobile Team Leader @Linkvalue

@saezChristopher; christopher.saez@link-value.fr
• Omer Ozkul: ...
Prochain SlideShare
Chargement dans…5
×

L’environnement du développement mobile iOS & Android

270 vues

Publié le

Presentation breve sur l'univers du développement logiciel sur iOS et Android avec état des lieux de la plateform, des editeurs de texte associés et des contraintes liées a ces plateformes.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
270
Sur SlideShare
0
Issues des intégrations
0
Intégrations
7
Actions
Partages
0
Téléchargements
7
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

L’environnement du développement mobile iOS & Android

  1. 1. L’environnement du développement mobile iOS & Android Omer Ozkul / Christopher Saez Juillet 2015 - Mis à jour Janvier 2016 LinkValue #TheGreatPlaceToGeek
  2. 2. Sommaire • Vue d’ensemble des deux écosystèmes • La plateforme iOS • le SDK iOS • Gestionnaire de dépendances CocoaPods • Les langages utilisés sur iOS (Application natives) • La plateforme Android • SDK Android • Android : une plateforme pensé pour tous les périphériques • Annexes • Auteurs
  3. 3. Vue d’ensemble des deux écosystèmes
  4. 4. iOS • Initialement iPhone OS, crée en 2007 • Dernière version stable iOS 9.2, iOS 9.3 en bêta • Utilisé sur iPhone, iPod, iPad, Apple tv(fork iOS5), Apple Watch(fork iOS 8) voiture (iOS in the Car) • 1,4M d’application disponible dont 700.000 adaptées iPad. • 14% de pdm (2ème acteur)
  5. 5. iOS iOS très peu fragmenté. Tailles d’écrans relativement fragmenté depuis 2014 avec la gamme iPhone6, Apple Watch et désormais AppleTV
  6. 6. Android • Android Open Source Project + Services(Google, Samsung ou les forks chinois) • Crée en 2008 et racheté par Google • 1 milliard de dispositifs activés l’année dernière • Se taille la part du lion (+80% pdm) • Actuellement en version 6.0. • Présent sur tous les périphériques, y compris dans les frigos connectés, les set-top-box, les lunettes…
  7. 7. Android Android OS relativement fragmenté. Tailles d’écrans beaucoup fragmentées. 2.3 4.0 4,1-4,2-4,3 4.4 5,0-5,1 6.0
  8. 8. La plateforme iOS
  9. 9. Le SDK iOS
  10. 10. SDK iOS L’IDE Xcode • Crée en 2003 • Développé par Apple seulement sur MacOSX. • Regroupe l’Interface builder pour faire les UI, Project Builder pour la partie code et configuration du projet, automator, test unitaires, profiling et déploiement d’applications. • Regroupe toutes les frameworks pour le développement d’applications Mac OSX, iOS, WatchOS et TvOS • Automatisable en ligne de commande via les command line tools du SDK. • Alternative: AppCode (par JetBrains)
  11. 11. Aperçu de project builder
  12. 12. Aperçu d’interface builder
  13. 13. SDK iOS Le simulateur
  14. 14. Xcode - gestionnaire de dépendances CocoaPods • Crée en Sept 2011, Open Source • En version 0.39. • La plus grande communauté • Gestionnaire alternatifs: Xcode Maven, Xcode Gradle, Carthage (Swift)
  15. 15. Les langages utilisés (Applications natives)
  16. 16. Objective-c et Swift • Objective-c • Crée en 1983 (pas très moderne). • Extension du C et inspiré de SmallTalk. • Orienté objet. • Swift • Crée en 2014 et OpenSource depuis fin 2015 (Swift V2). • Plus moderne (plus de headers, typage statique) • Supporte le paradigme fonctionnel nativement. • Interopérabilité avec Objective-c. • Pas mature pour des gros projets (Swift v2 tend à l’être)
  17. 17. La plateforme Android
  18. 18. Les IDE Android
  19. 19. Eclipse • Lourd, vieux, plante • Officiellement abandonné par Google depuis Android Lollipop
  20. 20. Android Studio • Version stable depuis Android Lollipop • Moderne, complétion plus puissante • Socle Intellij (phpstorm, pycharm, etc…) • Edition d’interface plus moderne qu’Eclipse. • Intégration native repo maven (équivalent de cocoapods ou composer)
  21. 21. Le SDK Android
  22. 22. Composition du SDK • IDE • Les API Android, la bibliothèque JAVA standard • Les commandes line tools • Le NDK (native développement kit: api C/C++) • Les outils (Debug management system, automatisation de test d’interface, profileur d’interface, simulateur, chrome webtools)
  23. 23. Un développement pensé pour tous les périphériques
  24. 24. Une multitude de périphérique de toutes tailles • Tailles d’écran fragmentés (moins maintenant qu’avant) • Versions fragmentés: 4.0, 4.1, 4.2, 4.3, 4.4, 5.0, 5.1, 6. • Résolutions différentes(HD 4 sur nexus6, HD3 nexus 5, s4, HD sur tablette, semi HD sur S2, MD et LD sur support écran embarqué • Supports différents: Montres, lunettes, telephones, phablettes, tablettes, frigo…
  25. 25. Une interface pour tous les devices • Le SDK Android a été pensé pour que les développeurs créent facilement une interface pour tous les devices. • Possibilité de faire une UI pour une taille d’écran spécifique sans écrire de code avec un ciblage des media queries très précis (exemple: UI adaptée pour un écran de 500x366 dans la nuit en paysage sur un en français Android 4.3)
  26. 26. Les contraintes du développement mobile • Temps de compilation qui augmente avec la taille du projet (réduit sous Android studio 2.0 avec Instant run) • Développement et test pour beaucoup de périphériques. • iOS • Configuration du projet(fichier de conf compliqué, certificat de développement, gestion du compte, certificat pour le push, passbook). • Durée de validation (15j), rejet aléatoire de la validation. • Android • IDE ralentit sur les gros projets à cause de la complétion (trop) puissante. • l’environnement trop fragmenté pour des tests recouvrant 100% du parc. • Choix techniques cruciaux: natif, hybride ou transpilé.
  27. 27. Annexes • https://developer.apple.com/support/app-store/ • https://itunes.apple.com/fr/app/xcode/ id497799835?mt=12 • http://developer.android.com/about/dashboards/ index.html • http://developer.android.com/sdk/index.html
  28. 28. Auteurs • Christopher Saez: Mobile Team Leader @Linkvalue
 @saezChristopher; christopher.saez@link-value.fr • Omer Ozkul: Technic partner développeur iOS @LinkValue
 omer.ozkul@link-value.fr

×