Dans le cadre de votre activité professionnelle, vous souhaitez mettre en oeuvre plusieurs projets d’application sur mobile. Votre budget est serré et vous ne pouvez tourner votre projet que vers un unique système d’exploitation. Que vous embauchiez en interne ou en régie, le choix de l’OS va être rapidement crucial.
En dehors de l’aspect marketing qu’implique cette démarche (étude des parts de marché dans le but de toucher un maximum d’utilisateurs), il est important de connaître les difficultés techniques inhérentes aux différentes plateformes. Pour peu que ce ne soit le premier projet de votre développeur, celui-ci risque rapidement d’être confronté à plusieurs difficultés… quelle que soit la plateforme choisie.
Le langage utilisé
Le développement sous Android se fait en JAVA : tout développeur qui se respecte connaît des bases de ce langage objet. En revanche, le développement sous iOS se fait en Objective-C, un langage propre à Apple dérivé du C et du C++. Rares sont les écoles d’ingénieur formant à l’Objective-C ; apprendre un nouveau langage (même dérivé du célèbre C) pour un nouveau projet risque donc de rajouter du temps de développement, et donc des coûts importants.
La plateforme de développement
Du côté d’iOS, les outils fournis avec la plateforme de développement sont particulièrement riches en explications : les développeurs sont donc pris par la main. Ce confort d’utilisation en fait la plateforme préférée de nombreux développeurs. Autre avantage : Apple propose aux développeurs d’acheter des « tickets » afin de pouvoir entrer en contact avec leurs ingénieurs en développement. Proposés à 50 dollars l’unité, ces tickets peuvent permettre aux développeurs de se décoincer et de pouvoir continuer le projet.
Sous Android, la documentation est beaucoup plus réduite : le projet va donc parfois subit des phases de ralentissements où les développeurs vont tâtonner. Fort heureusement, la communauté de développeurs sous Android est très active et peu s’avérer utile en cas de blocage.
Les terminaux
La stratégie multi-support de Google fait qu’Android est disponible sur une multitude de terminaux aux caractéristiques différentes. Lors du développement, il est donc nécessaire d’anticiper ce problème, notamment les ratios d’écran différents.
Quant à iOS, il n’est disponible que sur les iPad et iPhone d’Apple. Auparavant, ces deux modèles d’appareil affichaient un ratio d’écran similaire, ce qui simplifiait grandement le processus de développement. Désormais, avec la sortie de l’iPhone 5 et de son écran au ratio de 16/9, iOS perd cet avantage.
La publication
Un compte développeur d’Apple coûte 100 dollars par an, tandis qu’un compte développeur Google ne coûte que 25 dollars. À noter qu’il faut obligatoirement un Mac pour publier une application sur l’App Store.
Les délais de publication varient aussi énormément : avec Apple, il faut prévoir un délai de validation de dix jours environ, tandis que la publication sur le Play Store de Google ne dure qu’un jour. À anticiper s’il s’agit d’un projet urgent !
En conclusion
Les deux plateformes offrent une expérience de développement très différente.
Le côté fermé d’iOS laisse certes peu de place à l’improvisation, mais offre un confort de développement qui permet de tenir plus facilement les délais. La contrepartie logique de l’aspect fermé de cet OS est sa difficulté d’accès. L’OS de Google offre des avantages et des inconvénients opposés : liberté de développement, mais manque d’encadrement.
Cette symétrie nécessite donc d’anticiper en amont les besoins liés au projet.
Article rédigé par l’équipe de Qualia Systèmes.