HTML5 s’impose petit à petit comme LA référence pour les applications mobiles

Décidément, nous n’avons pas fini de débattre de l’impact de HTML5, d’une part sur le monde des RIAs (Flash, Silverlight…) et d’autre part sur le monde des smartphones (application native vs. web app). Il n’empêche qu’avec l’évolution récente du marché (Android est passé devant iOS), la légitimité des applications natives est remise en question.

Ce débat n’est pas tout neuf (cf. Vous êtes plutôt application mobile ou site web optimisé pour les smartphones ?), mais la fragmentation des systèmes d’exploitation mobiles augmente mécaniquement le coût de développement / d’évolution des applications natives, et du coup rend l’utilisation d’HTML5 bien plus attrayante. Certains ne s’y sont pas trompés comme le Financial Times et Playboy (L’avenir des magazines numériques est-il à l’HTML5 ?) et sont rejoints petit à petit par d’autres acteurs de taille : LinkedIn Overhauls Mobile Experience, Launches an HTML5 Web App et Amazon Quietly Releases A Web-Based Kindle Reader.

Dans un récent rapport, le firme eMarketer nous révélait ainsi que les mobinautes (smartonautes ?) avaient des préférences en fonction du type de tâche ou de contenu : HTML5 vs Apps, Who Will Win The Mobile Screen War?.

Répartition des applications et sites mobiles en fonction du contexte d'usage

Au coeur de ce débat : Les contraintes liées aux app stores (processus d’approbation laborieux, référencement complexe…) et leurs CGU drastiques pour imposer une commission de 30% et pour limiter les transactions cachées (notamment pour les applications de ebooks). Certes, le choix d’HTML5 est tentant, mais il ne se fait pas sans concessions : Ne pas être listé dans l’app store permet d’éviter de verser une commission, mais vous prive de nombreux téléchargements si vous parvenez à placer votre application dans une des têtes de gondole. Pour bien comprendre les plus et les moins, je vous recommande vivement ce très bon article : The fight gets technical: mobile apps vs. mobile sites. L’auteur y résume assez bien la situation et introduit même un compromis :

  • Les applications natives sont développées avec le langage de programmation le plus adapté à l’OS, elles offrent de la puissance, l’accès aux ressources du téléphone (caméra, GPS…) mais subissent le dictat des app stores.
  • Les applications web sont développées en HTLM5, elles sont donc parfaitement compatibles avec n’importe quel smartphone, mais nécessitent impérativement une connection web, ne peuvent pas exploiter pleinement la partie hardware et n’ont pas accès aux app stores.
  • Les applications hybrides qui sont développées avec du langage natif (Objective C ou Java) mais exploitent du contenu HTML et des fonctionnalités en ligne. Ce compromis permet visiblement de jouer sur les deux tableaux.
Comparaison des applications mobiles natives, hybrides et en ligne (source : Worklight)

L’hybridation semble donc être une solution intéressante, plusieurs frameworks proposent ainsi de faciliter le développement et le déploiement de vos applications (PhoneGap, Particle Code, Titanium, RhoMobile, MoSync…), mais ils imposent l’utilisation de langages de plus bas niveau. De même, de nombreux framework javascript promettent d’améliorer l’expérience de vos applications tout en vous simplifiant le développement (cf. Top 10 Mobile Web Development JavaScript Frameworks et 10 New Frameworks for Mobile Web App Developers). Je ne suis pas un spécialiste, mais les retours d’expérience que j’en ai eu sont plutôt bons. Je pense donc ne pas me tromper en disant qu’HTML5 s’impose petit à petit comme LA référence pour les applications mobiles.

OK, mais que fait-on des jeux mobiles ? Là encore, de gros progrès ont été réalisés comme en témoignent ces différents exemples : 5+ Impressive Free HTML5 Games You Can Play In Your Browser et 6 Mobile HTML5 Games You Can Play On Your Smartphone For Free. Il y a même une conférence dédiée aux jeux mobiles HTML5 : New Game Conf. Pour le moment les jeux très graphiques sont très difficilement « portable » en HTML5, mais la question que l’on doit se poser est la suivante : Quelle part de marché va représenter cette catégorie de jeux mobiles dans 5 ans face à la montée en puissance des social games ?

Voilà un petit moment que je suis de près ce débat, et même si l’on trouvera toujours des arguments irréfutables pour privilégier des applications en langage natif, les solutions reposant sur HTML5 gagnent du terrain et sont de plus en plus viables. À tel point que l’on se demande ce qu’attendent les grands éditeurs pour proposer leur solution… Adobe serait ainsi un bon candidat pour proposer un environnement de développement universel pour des applications mobiles, ils fricotent déjà de ce côté là avec Device Central ou l’intégration de PhoneGap dans Dreamwaver, mais ça ne va plus loin. Le tout récent Muse (un logiciel d’édition de site web WYSIWYG) démontre déjà les efforts que fournissent les équipes d’Adobe pour se réapproprier HTML5 et les outils de développement qui vont avec.

Dans tous les cas de figure, le développement « universel » sur les différents smartphones du marché n’est que l’arbre qui cache la forêt. Car même si la part de marché des smartphones va monter à 50% d’ici la fin de l’année 2012, il faudra toujours servir les 50% restant… et ne pas oublier les touchbooks… ni la nouvelle génération de e-readers…