Retour

Web mobile, appli hybride ou native, quelles sont les différences ?

Il existe 3 méthodes pour construire des applications pour mobiles, chacune avec ses forces et faiblesses, avec quelques différences en termes d'expérience utilisateur. Les applis résultantes sont appelées applis web mobile, applis hybrides ou applis natives.

Désormais, nous nous concentrons sur les solutions qui permettraient l'accès à une base de données ou un service web pour lire et écrire des informations.

Applis web mobile

Les applis web mobile sont des sites web fonctionnant dans un navigateur web et optimisés pour l'usage à partir d'un mobile. Elles sont conçues spécifiquement pour s'adapter à la taille d'écran d'un terminal mobile.

Avec l'interface web, on utilise HTML pour décrire l'agencement de l'écran (où et comment chaque élément textuel ou graphique est disposé sur l'écran) et des scripts écrits dans le langage Javascript pour traiter l'interaction avec l'utilisateur (que faire quand l'utilisateur touche un bouton, par exemple).

Applis web mobile

A: Vue web du navigateur, décrite dans le langage HTML
B: Moteur javascript (JS) embarqué dans la plateforme
C: Plateforme (système d'exploitation)
D: Serveur web

Comment ça marche ?

Le navigateur charge initialement la description de l'écran et les scripts JS à partir du serveur web.

  1. Le navigateur transmet les évènements tactiles aux scripts.
  2. Les scripts interprètent l'intention de l'utilisateur, et construisent une requête à destination de la plateforme.
  3. La plateforme envoie la requête au serveur web et reçoit la réponse correspondante, contenant éventuellement des éléments graphiques pour décrire comment dessiner les informations à l'écran.
  4. La réponse est traitée par les scripts, qui packagent les informations dans des éléments graphiques.
  5. Les éléments graphiques sont dessinés dans la vue web du navigateur.

Bénéfices

  • Aucune installation ou mise à jour nécessaire
    Tout mobile dispose d'un navigateur et embarque un moteur javascript. Puisque le serveur web est accessible en ligne (ou dans un réseau privé), les applis web mobile ne requièrent aucune forme d'installation sur les terminaux. Elles ne requièrent non plus aucune validation de la part du magasin applicatif de l'éditeur, ni de mise à jour dans le cas où l'application est amenée à évoluer.
  • Un aspect uniforme
    Avec un navigateur compatible avec HTML version 5, l'application devrait présenter un aspect uniforme sur toutes les plateformes (nous y reviendrons plus tard).
  • Un accès multiplateforme
    Tout mobile dispose d'un navigateur, lui permettant d'accéder au serveur web.
  • Une durée de développement réduite
    Le développement web est plus facile et rapide que le développement natif.
  • Des compétences disponibles sur le marché
    Aujourd'hui, de nombreux développeurs se sont spécialisés dans les technologies HTML / JS, ce qui rend leurs compétences disponibles facilement. Cependant, gardez à l'esprit que les applications les plus réussies ont été construites par des développeurs expérimentés.

Inconvénients

  • Pas d'accès aux fonctionnalités spécifiques aux mobiles
    Fonctionnant dans le navigateur, l'appli web n'est pas autorisée à utiliser certaines fonctionnalités spécifiques aux mobiles, telles que la reconnaissance des empreintes ou des codes barres. Dans ce dernier cas, le mobile doit envoyer l'image du code barre au serveur, qui effectue alors l'opération de reconnaissance.
  • Le web est un second choix pour les utilisateurs
    Comme indiquée dans la section information mobile, l'utilisation des applis a largement contribué à l'adoption des mobiles, de préférence à l'utilisation des sites web mobile.

Applis hybrides

Les applis hybrides sont similaires aux applis web mobile dans leur principe de fonctionnement. Un navigateur est une appli contenant une vue web et chargeant à partir d'un serveur web la description de l'écran et les scripts JS permettant de gérer l'interaction avec l'utilisateur. Par comparaison, une appli hybride est une appli contenant une vue web et chargeant de sa mémoire la description de l'écran et les scripts JS.

Construire une appli avec PhoneGap

La très grande majorité des applis hybrides est construite avec une enveloppe open-source appelé Cordova (anciennement PhoneGap). L'appli résultante possède sa propre identité (une signature spécifique dans le magasin applicatif de l'éditeur) et une icône, de façon similaire à une appli native.

Applis hybrides

A: Vue web de l'appli, fournie par la plateforme
B: Moteur javascript (JS) embarqué dans la plateforme
C: Plateforme
D: Service web

Quelles sont les différences ?

Il existe quelques différences avec le schéma précédent.

Comme décrit précédemment, l'enveloppe applicative charge initialement la description de l'écran et les scripts JS de sa mémoire, accélérant de ce fait le processus de démarrage.

[2 + 2a] Une appli hybride est autorisée à accéder aux fonctionnalités natives de la plateforme. Cependant, cette fonctionnalité "passerelle" entre l'environnement wbe et la plateforme native doit être développée avec les outils de développement de la plateforme native.

Reposant sur la même base technologique que les applis web, les applis hybrides bénéficient des mêmes forces et faiblesses, avec les différences présentées ci-dessus.

Cependant, comme les applis web, les applis hybrides se distinguent par une grande consommation de mémoire, nécessitant jusqu'à 50-100 Mo pour gérer un écran simple. Avec l'utilisation combinée du moteur javascript de la plateforme, le processeur est sollicité davantage, dégradant l'expérience utilisateur : le rafraîchissement d'écran peut se dégrader, et la réactivité aux évènements tactiles peut se ralentir. L'appareil chauffe, et la batterie se vide plus rapidement.

Les performances du moteur Javascript sont généralement améliorées avec les nouvelles versions de système d'exploitation mobile. Cependant, HTML et Javascript étant des standards en constante évolution, les différences d'implémentation de la vue web sur les plateformes mobiles peuvent nécessiter des adaptations spécifiques à vos terminaux, comme décrit ici ou (en anglais). Pour mieux comprendre les différences, veuillez vous référer à cet article technique sur la genèse et les évolutions de la vue web.

De plus, les applis hybrides doivent être installées et mises à jour sur chaque mobile, leur logique de fonctionnement étant embarquée dans l'enveloppe applicative sous la forme de scripts JS.

Applis natives

Les applis natives sont des applis dont l'interface est écrite entièrement dans le langage natif de la plateforme : Objective-C ou Swift pour les iPhones et iPads, Java pour les appareils Android, C# pour les modèles Windows Mobile. Une interface native produit la meilleure expérience utilisateur. Elle est rapide, soignée, et se comporte de la façon attendue par les utilisateurs sur chaque plateforme.

Applis natives

A: Vue applicative, décrite nativement
C: Plateforme
D: Service web

Comment ça marche ?

  1. L'appli interprète les évènements tactiles de l'utilisateur, et construit une requête pour la plateforme.
  2. La plateforme envoie la requête au service web et reçoit les informations en retour.
  3. La réponse est traitée par l'appli, puis les éléments graphiques résultants sont dessinés dans la vue applicative.

Bénéfices

  • Une interface adaptée à la plateforme
    Les applis natives sont tenues de respecter les recommandations de l'éditeur en termes d'interface utilisateur, offrant ainsi une expérience utilisateur optimale et s'intégrant de manière homogène avec les autres applis résidant dans le mobile de l'utilisateur.
  • Une expérience utilisateur excellente
    Les applis natives représentent le premier choix des utilisateurs, grâce à leur interface fluide et réactive, ainsi que leur capacité de mettre en ouvre toutes les fonctionnalités spécifiques au mobile (pensez reconnaissance des empreintes, par exemple).

Inconvénients

  • Une durée de développement plus longue
    Le développement natif est plus difficile et complexe que le développement web. Les outils de développement natifs sont réellement difficile à apprendre et leur utilisation est coûteuse en temps, entraînant ainsi un coût de développement supérieur.
  • Un développement spécifique à la plateforme
    Une appli développée pour une plateforme ne peut être ré-utilisée "telle quelle" sur une autre plateforme. Elle doit être adaptée au langage et aux fonctionnalités de chaque plateforme. Ce point est le principal inducteur de coûts et le problème majeur du développement mobile.
  • Installation et mise à jour nécessaires
    Comme toute autre appli dans votre mobile, les applis natives doivent être installées et mises à jour dans chaque appareil mobile.
  • La pénurie des compétences
    Peu de développeurs maîtrisent les technologies natives, rendant la disponibilité des compétences faible.

Motilia évite aux entreprises de faire face aux délais importants des applis natives et accélérer la mise en œuvre des projets en supprimant la phase de programmation. Il suffit de décrire les données utilisées dans l'outil pour en construire la structure logique.

Maintenant que vous disposez d'une vision claire des technologies clefs, lisez dans l'article suivant les critères qui aideront à votre entreprise à choisir la technologie adéquate.


Le cas Motilia

Motilia est un outil de nouvelle génération permettant aux entreprises d'obtenir leur solution mobile spécifique sans programmation, tout en mettant en œuvre une interface mobile native. Il combines les bénéfices des applis native et ceux des applis hybrides, en particulier:

  • Une interface adaptée à la plateforme,
  • Une interface utilisateur fluide et réactive,
  • Un délai de réalisation court, grâce à l'absence de programmation,
  • Pas de mise à jour nécessaire, dans le cas de changements fonctionnels dûs à des besoins fonctionnels.

Motilia évite aux entreprises de faire face aux délais importants des applis natives et accélérer la mise en œuvre des projets - en supprimant la phase de programmation. Il suffit de décrire les informations utilisées de la base de données pour construire la structure logique de la solution spécifique.


Découvrez comment Motilia combine les avantages des applis natives et ceux des applis hybrides - sans programmation