App native VS app web VS app hybride

Aujourd’hui lorsque l’on souhaite créer une application, trois options majeures s’offrent à nous. Nous avons en effet la possibilité de faire une application native, une application web ou encore un application hybride.

Je vais tâcher de vous expliquer ici succinctement les avantages et inconvénients de chacun de ces trois types d’app.

Les applications natives

La première chose importante concernant les apps natives est qu’elles sont développées en utilisant des langages de programmation propre à chaque plateforme.

Grosso modo cela signifie que si vous souhaitez publier votre app sur Android et sur iOS, il vous faudra la développer deux fois.

C’est réellement deux projet différents. Les apps pourront partager un tronc commun, par exemple l’API qui permettra à votre app de charger / enregistrer des données, mais la partie “cliente” sera à refaire from scratch pour chaque plateforme visée, entraînant donc un coût supplémentaire non négligeable.

Une fois les apps natives développées vient le temps de la soumission aux stores. Il vous faudra soumettre l’application à Apple pour validation et faire de même pour Android qui vous la valideront / refuseront selon leur bon vouloir.

Il faut noter que la durée de cette validation varie en fonction de la charge de demandes de soumission des stores et peut aller de quelques jours à plusieurs semaines. Ajoutez à cela que les motifs de refus sont plus ou moins précis, du type “Ne respecte pas nos guidelines”. Débrouillez-vous bien avec ça ! Et forcement à chaque update (Mise à jour) l’app devra repasser le parcourt du combattant…

Une fois votre app validée elle sera donc accessible à tous depuis les stores. Par contre elle risque d’être invisible, noyée au milieu des million d’autres app des stores, ne comptez donc pas sur de l’adoption organique, il va vous falloir une bonne grosse opération de communication pour soutenir ce lancement.

Avantages

  • Les performances sont optimales, l’app ayant été développée spécifiquement pour une plateforme.
  • Fonctionnel hors-connexion.
  • L’application peut être vendue sur les store (prévoir un pourcentage pour nos très chers distributeurs).
  • Achat in-app géré.

Inconvénients :

  • Temps de validation de l’app pour publication dans les stores.
  • Le store à tous les droits sur votre app et peut la faire disparaître du jour au lendemain selon leur humeur.
  • Un développement spécifique pour chaque plateforme. Publication sur deux plateformes ? Vous pouvez quasi doubler votre budget.

Les applications web

Les web apps, ou progressive web app (PWA), sont des applications, sur le web. Il faut simplement voir ce type d’app comme un site web riche en fonctionnalités.

Le premier gros avantage de ce type d’app est que vous n’avez pas besoin de développer une version par plateforme. Il s’agit en fait ici de capitaliser sur le fait que toutes les plateformes (iOS, Android…) bénéficient d’un navigateur permettant d’aller sur le net.

Il vous faudra donc développer une seule fois l’app à l’aide de langage web (HTML / CSS/ JS / …), de la mettre en place sur votre serveur et TADAM, votre app est dispo partout !

L’autre avantage non négligeable c’est pour les mises à jours. Mettez à jour le code sur votre serveur et l’app est automatiquement mise à jour pour tous vos utilisateurs, quelle que soit la plateforme. Pas besoin de repasser l’étape infernale de la publication sur les stores et d’être de nouveau tributaire du bon vouloir des plateformes.

Avantages :

  • Temps de validation inexistant.
  • Mises à jour très rapides.
  • Votre business n’est pas tributaire de la validation des plateformes.

Inconvénients :

  • Moins performant que les applications natives
  • Moins de fonctionnalités accessibles
  • Mode hors-ligne moins bien géré.

Les applications hybride

Les apps hybride quant à elles sont un mix des app native et web. Grosso modo ici vous allez développer votre app comme une web app, avec le même langage quelque soit la plateforme visée.

On utilisera ici une technologie de type Cordova qui va permettre d’encapsuler cette web app dans une application native. Application qu’il faudra donc soumettre a validation pour les différents store de chaque plateforme.

L’avantage de l’app hybride c’est que vous pouvez avoir une app dans les store en réduisant les coûts de développement. Après il y aura quelques exceptions propres à chaque plateforme a gérer, forcement, mais 95% du code des apps sera commun.

Avantages :

  • Les performances sont entre la web app et l’app native.
  • Fonctionnel hors-connexion.
  • L’application peut être vendue sur les store (prévoir un pourcentage pour nos très chers distributeurs).
  • Achat in-app géré.
  • Accès plus simple au fonctionnalités système (Appareil photo, contacts,…).
  • Un développement commun a 95% niveau code.

Inconvénients :

  • Temps de validation de l’app pour publication dans les stores.
  • Le store à tous les droits sur votre app et peut la faire disparaître du jour au lendemain selon leur humeur.

Quel type d’app choisir ?

J’ai essayé de vous expliquer les avantages et inconvénients de chaque type d’app mais si vous voulez le fond de ma pensée je vous dirais de foncer sur une web app, à part si vous réalisez une app ayant besoin de grosse performances, par exemple un jeu en 3D.

Le fait d’être dépendant des plateformes me dérange beaucoup. Hors de question que ma roadmap ne soit impactée par le temps random de soumission / validation de store.

La plupart des applications que je créé (services / jeux), n’ont pas besoin de fonctionnalités natives avancées ou gourmandes en ressource.

Pour ce qui est du paiement / achat in-app / abonnement, Stripe ou Mollie font très très bien le boulot.

Alors oui il n’est pas facile de faire des systèmes de notification en web. Mais voulons nous vraiment un futur remplis d’app qui spam de notif à chaque fois qu’il se passe le moindre truc sur un service ? Franchement pour ma part c’est un grand non. Un système de notif in-app est largement suffisant et évite de pourrir la vie de ses utilisateurs.

J’espère que cet article vous aidera à vous décider.

0 Shares:
Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

You May Also Like