Selon un sondage opinion Way (2016), les jeunes ayant entre 16 et 24 ans passent désormais plus de 3h30 par jour sur leur smartphone. Le mobile est donc un vecteur de communication non négligeable pour les entreprises et notamment via une application.

Trois solutions de développement permettent aujourd’hui d’intégrer le mobile :

  • le développement d’une application dite native,
  • le développement d’une web-app,
  • et le développement d’une application hybride.

Ces trois solutions sont différentes en termes de : coût, temps de développement, de performance et fonctionnalités une fois installées sur le téléphone.

L’application natives

Une application native est développée directement dans le langage compris par le téléphone. Elle nécessite d’être téléchargée et installée.

Chaque marque de téléphone dispose d’un système d’exploitation propre. Cela fonctionne à la manière d’un ordinateur de bureau, par exemple : sur certains ordinateurs vous devez installer Windows et seuls les logiciels compatibles Windows pourront être installés sur cette machine. Réciproquement, sur une machine Apple, le système d’exploitation est différent et seuls les logiciels développés pour cette machine pourront y être installés.

Les systèmes d’exploitation les plus connus pour les téléphones sont : Android, IOS et Windows phone. Tous les trois sont développés dans des langages différents. Le développeur utilise les langages suivants pour leurs OS respectifs :

  • le langage SWIFT ou Objective-C pour IOS,
  • le langage Java pour Android
  • et le langage C# pour Windows phone.

Si votre budget l’autorise, c’est la solution qu’il faut choisir. En effet, une application native permet d’accéder sans accroc aux fonctionnalités du téléphone (exemple : le GPS, l’appareil photo et les notifications notamment). Ce type d’application permet également d’accéder et de stocker des informations dans la mémoire du téléphone (également bidouillable pour les web-apps en HTML5 et possible en hybride). Elle est plus performante et fluide pour les utilisateurs.

Cependant, vous devrez payer le développement d’une application par OS de téléphone et les temps de développement sont plus longs.

La Web-application

Les Web-applications sont développées dans un langage Web interprété par le client (le navigateur de votre mobile). C’est un site Internet conçu spécialement pour être lu sur un téléphone. (/!\ vous pouvez également construire une web-app pour le desktop).

Si vous souhaitez tester une Web-app sur votre mobile, essayez celle-ci :  Forecast.io

L’application est développée en HTML, CSS et JavaScript. La plupart du temps, l’utilisateur devra avoir une connexion Internet pour utiliser ce produit. On pourrait penser que l’utilisateur peut se retrouver bloqué en cas de perte de connexion. Ce n’est pas tout à fait vrai, avec le HTML5 il est possible de stocker quelques données dans le navigateur du téléphone et si le coup est prévu, l’utilisateur peut accéder à quelques pages de l’application en mode hors connexion. Les dernières avancées technologiques permettent également d’accéder à quelques fonctionnalités natives, notamment la localisation GPS et l’appareil photo. Mais contrairement à une application native l’accès à l’ensemble des fonctionnalités du téléphone est très restreint (exemple : les notifications).

Les deux plus gros avantages de ce type d’application sont :

  • le temps et les coûts de développement qui sont très courts (un seul développement pour tous les OS),
  • comme l’application n’est pas directement téléchargée sur le téléphone l’utilisateur n’a pas besoin de télécharger la dernière mise à jour pour voir la dernière version de l’application.

L’application hybride

L’application hybride est un mix des deux premières solutions. Le développeur va passer par un ensemble de bibliothèques de code pour permettre d’intégrer du HTML, du CSS et du JavaScript dans une application native. Elle est donc téléchargeable et utilisable hors ligne.

Le développement d’une application hybride repose sur l’utilisation de solutions comme PhoneGap ou Cordova.  L’application, grâce à ces Frameworks (bibliothèque de code), bénéficie des mêmes fonctionnalités qu’une application native. Cependant, les surcouches de codes permettant au téléphone de lire les langages web, ralentissent l’application. L’expérience utilisateur peut donc être amoindrie (latence).

Les langages web sont très souvent maitrisés par les développeurs, il est donc plus facile de trouver quelqu’un pour produire l’application. De plus, une fois le code compilé, l’application peut être exécutée sur plusieurs OS. En fait, c’est là tout l’intérêt de passer par ce mode de développement, vous raccourcissez les temps de développement et du coup les budgets ! Idéal pour une MVP rapidement mise sur les stores.

Les deux dernières grandes tendances en matière de Framework pour ce style de développement sont : Ionic et ReactNative (solution facebook).