Des applications mobiles en no code, c’est désormais possible. D’innombrables solutions s’offrent au néo-citoyen-développeur, aussi appelé “Citizen Maker”, pour créer lui-même des applications web mais aussi désormais des applications mobiles. Celles-ci peuvent même côtoyer les applications de grands éditeurs dans les rayons de l’App Store ou du Play Store : le graal !
En effet, ces applications “no codées” rivalisent largement avec les App’ disponibles sur le marché. Elles peuvent désormais inclure des fonctionnalités natives telles que les notifications push, la reconnaissance faciale, les achats in-app, l’accès au GPS, et bien d’autres.
Un exemple vaut mieux qu’un long discours
On ne peut évidemment pas (encore !) tout faire en No Code (et, par définition, le code permet d’aller un cran plus loin). Cependant, quelques réalisations prouvent que l’on peut déjà atteindre un niveau très satisfaisant de technicité. Voici quelques exemples d’applications dont la communauté No Code n’a pas à rougir, loin de là !
Really-Really-Want
Une application de rencontre façon Tinder développée avec Bubble, dont la personnalisation des interactions et du parcours est extrêmement poussée.
Une application de veille sur les outils No Code (mais pas que), développée avec Glide, qui est une référence dans la communauté No Code francophone.
Bootikk
Une démo que j’ai personnellement réalisée avec l’outils Adalo. Elle propose aux particuliers qui n’ont pas les moyens, de créer une application e-commerce, d’exposer leurs articles sur une plateforme communautaire.
Choisir un outil No Code adapté à son projet
Le choix de l’outil No Code pour développer une application mobile n’est pas anodin. Il se révèle même bien plus critique que le choix d’un langage de programmation (dans le cas d’un développement classique avec code).
Plusieurs critères déterminants sont à prendre en compte :
Les fonctionnalités
En effet, en code traditionnel, le rendu et les fonctionnalités envisageables sont relativement équivalents. Par exemple, le choix entre Swift (le langage natif pour iOS) et React Native (un framework compatible iOS et Android) est peu critique. En No Code, les différences sont majeures selon l’outil choisi entre Glide, Adalo et Bubble (pour ne citer que 3 des outils les plus connus).
Par exemple, Glide ne permet pas les notifications push, alors qu’Adalo et Bubble ne proposent pas, ou pas complètement, le mode hors ligne. Il convient donc de faire des recherches en amont et d’identifier clairement quelles fonctionnalités clés votre application doit absolument inclure, afin de sélectionner le bon outil et de ne pas vous retrouver dans une impasse lors du développement de votre projet.
Le niveau de complexité
Ensuite, le temps nécessaire pour maîtriser l’outil No Code doit également guider votre choix. D’autant plus s’il s’agit de la première application que vous développez – et que vous ne comptez pas devenir un développeur No Code professionnel (et ne pouvez donc pas consacrer trop de temps à l’apprentissage de l’outil).
Adalo, outil tout-en-un, permet de publier relativement facilement sur les stores, tandis que Draftbit (qui nécessite la connexion d’un backend tiers tel que Firebase) ou Bubble (qui implique l’utilisation d’un service supplémentaire tel que BDK) demandent bien plus d’efforts.
Les ambitions de votre projet mobile
La capacité des outils à passer à plus grande échelle :
- (“scalability”),
- la stratégie de distribution,
- la possibilité de sécuriser les données de façon avancée,
- le coût de revient,
Sont quelques unes des nombreuses dimensions qu’il convient d’avoir à l’esprit lors de son choix.
Les différents types d’applications mobiles
Chaque outil No Code permet de créer un ou plusieurs types d’applications, et chacune de ces applications offre différentes fonctionnalités et a un mode de distribution différent. Distribuer sur le web est par exemple relativement simple et peu contraignant, tandis que publier sur les stores implique de respecter certaines règles.
Pour synthétiser, il existe 3 principales catégories d’applications mobiles :
Les applications “web responsive”
Ces applications sont en réalité des sites web dont la taille s’adapte à celle de l’écran. On y accède par une simple URL sur le navigateur de son téléphone, et rien n’empêche d’ajouter un raccourci sur son écran d’accueil de façon à pouvoir y accéder rapidement. Ces applications pourront être développées en “one-page” (navigation par onglet sur une seule page) de façon à reproduire le plus possible la réactivité d’une application mobile conventionnelle.
Les applications “PWA” (Progressive Web App)
Tout le monde ne s’accorde pas sur la définition exacte de ce qu’est une PWA. Mais il s’agit globalement là aussi d’une application basée sur un site web dont la taille s’adapte aux écrans mobiles. Elles comportent des fonctionnalités natives propres au mobile, un design pensé en priorité pour une destination mobile (par exemple un menu de navigation par onglets flottant au bas de l’écran, la suppression de la barre d’adresse, etc.) et autorisent même pour certaines le mode hors ligne. On y accède également par une simple URL, et l’on peut aussi ajouter un raccourci sur son écran d’accueil.
Les applications “Natives”
Ces applications sont développées dans un langage natif (Swift, Java) ou avec un kit de développement/framework (Flutter, React Native) et distribuées via l’App Store et/ou le Play Store.
Évaluez les solutions et faites votre choix !
Le choix d’un outil No Code pour construire une App’ mobile implique une phase de préparation et la définition d’objectifs. La solution parfaite n’existe pas et il faut donc faire certains compromis.
Au-delà des objectifs de l’application (prototype, utilisation long terme, nécessité pour les équipes métier ou le porteur de projet de prendre la main sur le développement, etc.), vous devez tenir compte de facteurs externes tels que le nombre de “Makers” (développeurs no code) experts de l’outil, la réactivité du support client fourni par l’éditeur, la taille de la communauté, etc..
Choisir l’outil le plus adapté à votre projet revient donc à prioriser certains critères et fonctionnalités en fonction du résultat attendu.