Les différents types d’applications Web

Article abordant les différents types d'applications dans le développement informatique

Que ce soit sur notre ordinateur ou sur notre téléphone, on utilise quotidiennement des applications.

Une application ou une app est un programme qui va réaliser une ou des tâches en utilisant les ressources du support mis à disposition. Par exemple pour une application mobile, l’appli utilisera les ressources du téléphone, à la fois matériel comme le GPS mais aussi logiciel comme le système d’exploitation Android ou iOS.

Il existe 3 grandes familles d’application:

  • les applications web
  • les applications mobiles
  • les applications de bureau

Elles ont chacune leur propre évolution et leur propre sous-famille

Application web

Les applications web sont accessibles via un navigateur exclusivement. On fait souvent l’amalgame de croire qu’un site web et une application web et vice versa. Mais en réalité, ce n’est pas du tout pareil.

Peu d’applications web possèdent un mode hors-ligne, bien souvent, les entreprises ont recours à des applications mobiles ou de bureau dès que c’est le cas.

Prenons quelques exemples ! Dans le domaine grand public, Facebook est une application et non un site internet. La suite Google (équivalente à la suite Microsoft Office) regroupe un ensemble de programmes permettant de réaliser des actions précises. Les portails intranet que l’on utilise au sein d’une entreprise sont des applications.

Par contre, comme mentionné plus haut, le site vitrine présentant la nouvelle startup et ses services n’est pas une application web

Les avantages du développement d’une Web App web qu’un autre type de programme se trouvent en grande partie dans le faible coût de développement, la haute sécurité, la facilité de mise à jour et la haute disponibilité de cette dernière.

L’un des avantages phare est aussi qu’une application web sera disponible sur n’importe quel support (ordinateur, tablette, téléphone) possédant un navigateur web, ce qui en fait encore aujourd’hui l’un des développements les plus prisé.

Cependant, contrairement à des Web App mobiles, il sera impossible d’avoir accès à des fonctions natives de l’ordinateur, même si les nouvelle

Application mobile

Les applications mobiles sont des applications téléchargeables sur les stores officiels

Les stores sont des applications liées au système d’exploitation de notre téléphone Android ou iOS qui référencent toutes les programmes disponibles et compatibles pour notre téléphone. Il est possible des les télécharger en dehors du store d’Android de manière légale cependant pour iOS ce ne sera pas possible sauf si on décide de jailbreaker son téléphone, chose qui est évidemment non légale.

Notre consommation ayant évolué au fil du temps, selon une étude, nous passons en moyenne 33 minutes par jour à surfer sur un ordinateur contre 1 heure 16 sur un mobile. Pour les plus jeunes, la statistique est encore plus flagrante puisqu’il passerait seulement 6 minutes par jour sur un ordinateur contre 2 heures 09 sur un mobile.

Les startups l’ont bien compris et la demande de développement mobile explose. Les technologies ont, elles aussi, évolué avec le temps passant de développement lourd à des développements beaucoup plus léger grâce aux technologies web.

Les startups l’ont bien compris et la demande de développement mobile explose. Les technologies ont, elles aussi, évolué avec le temps passant de développement lourd à des développements beaucoup plus léger grâce aux technologies web.

Cependant, les inconvénients sont de tailles puisqu’un développement mobile coûtera énormément plus cher qu’un développement web, la maintenance des applications selon le type de développement ne sera pas des plus aisé et la mise en ligne demandera de la patience et beaucoup de lecture pour respecter les différentes règles des stores respectifs.

Application de bureau

Les applications de bureau sont des programmes qui s’exécutent de manière autonome sur un ordinateur. On en utilise au moins régulièrement une lorsqu’on souhaite surfer sur internet et ce n’est autre que le navigateur web: Internet Explorer, Safari, Firefox ou encore Chrome pour ne citer que les plus connus.

Une application de bureau représente une réelle continuité d’une Web App dans certains cas. Permettant d’être utilisable en ligne ou hors-ligne, elle représentera un véritable atout pour des sociétés possédant des commerciaux se trouvant régulièrement sur le terrain et ayant besoin d’avoir accès ou de remplir des informations sur un logiciel entreprise. Ce qui n’est pas possible avec une application web puisqu’elle n’est pas accessible hors-ligne.

Les applis desktop (bureau en anglais) auront un spectre d’utilisation plus large que celui évoqué à l’instant. La suite Microsoft Office en est un très bel exemple.

L’une des caractéristiques principales d’une applis de bureau est que dans la plupart des cas, il sera nécessaire de l’installer pour pouvoir l’utiliser. Elle possédera de très bonnes performances et aura évidemment accès à toutes les fonctionnalités de l’ordinateur contrairement à une application web.

Performance, rapidité et stabilité sont les points forts d’une app desktop tandis qu’on pourrait souvent lui reprocher d’être lourde, dépendante durant le développement du langage du système d’exploitation et pour une application hors-ligne, parfois difficile d’exporter les données pour les réutiliser ailleurs.

Développement spécifique.

Les applications mobiles ont longtemps été exclusivement développées nativement, c’est-à-dire dans le langage correspondant à chaque plateforme Java pour Android, Swift pour iOS

Depuis quelques années, les technologies ayant évoluées, il est maintenant possible de développer des applications mobiles avec les technologies Web en utilisant des frameworks comme React Native ou Ionic. C’est ce qu’on appelle des applications hybrides cross-plateformes

Hybride car elles utilisent du code natif pour fonctionner et du code web pour l’affichage.

Cross-plateforme car avec un seul développement dans les technologies web, on pourra déployer une application sur tous les supports mobiles.

Il est de même pour les applications de bureau qui sont maintenant développables avec des technologies Web grâce à des frameworks comme Electron ce qui n’était pas possible encore il y a quelques années.

Pourquoi cette évolution ?

Les besoins ont évolué avec le temps et les sociétés veulent développer des applications de plus en plus vite et à des coûts de moins en moins élevés..

Aujourd’hui, développer une application mobile c’est:

  • une équipe Java pour Android
  • une équipe Swift pour iOS
  • une équipe Backend pour gérer l’API

De l’autre côté, une appli hybride avec React Native ou Ionic qui utilisent tous les deux le JavaScript regroupera simplement équipe JavaScript qui pourra par la même occasion développer un Backend API en JavaScript avec NodeJS.. Les différents types d’applications 6 Si l’entreprise s’organise correctement, la même équipe pourra en amont développé l’application web avec les mêmes technologies et partager certaines parties du code

Les coûts n’ont donc rien à voir et les possibilités de l’équipe non plus.

Conclusion

Le monde des applications est en pleine mutation. Aujourd’hui, le développement à surveiller pour les prochaines années est celui des PWAs, où Progressive Web App.

Ce sont des applications web que l’on peut exporter sous forme d’icône sur mobile permettant de se rapprocher d’une app mobile. Les performances sont assez bluffantes et l’accès aux fonctionnalités du téléphone s’étoffent de mois en mois. Le gros avantage réside dans le fait que ce type d’application s’émancipe de l’autorisation des stores Android et iOS qui sont la bête noire des équipes de développement.

C’est donc le carrefour entre deux mondes en somme, réunissant les avantages des apps web et celles des apps mobiles.

Thomas C

Formateur sur des parcours DWWM & CDA, j'ai décidé d'aller plus loin en te partageant mes connaissances en vitesse supersonic 🚀 Prends ta revanche sur la vie !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

Formation Développeur Web