Bien choisir la techno de ses apps mobiles en 2020
Swift, Kotlin, Flutter ou React Native, ces noms vous sont peut-être familiers ? Entre les enjeux d'expérience client et d'image d'un côté et la maîtrise des coûts, l'unification de l'expertise technique de l'autre, le choix des technologies de développement est complexe. Panorama des solutions.
D'un côté, un usage de plus en plus fort des applications mobiles, notamment renforcé par une période où le digital sert, dans la "vraie vie", la distanciation sociale, le sans contact et les nouveaux parcours clients.
De l'autre, la multiplication des interfaces clients (site, application iOS, Android et parfois interfaces in-store) amène les entreprises à réfléchir aux solutions de mutualisation afin de réduire les coûts et parfois de simplifier l'internalisation sur un seul langage technique maîtrisé par les équipes.
Dans ce domaine, les technologies - et parfois les modes - évoluent relativement vite, il est donc nécessaire de réviser régulièrement les solutions disponibles, d'autant qu'il n'y a pas de réponse unique mais un choix qui dépend du contexte de l'entreprise. En préparation de la nouvelle décennie qui s'annonce " mobile centric ", petit tour d'horizon des solutions de développement d'applications mobiles.
Du natif au web, quatre grandes options
Les technologies de développement d'apps peuvent être classées en 4 grandes catégories :
1 - Les langages de développement des systèmes d'exploitation, dits " natifs " (compilés, spécifiques à chaque plateforme) permettant le développement d'apps " natives " (Kotlin pour Android chez Google, Swift pour iOS chez Apple)
2 - Les technologies cross-plateforme (Flutter, Kotlin/Native) qui génèrent du code compilé, adapté à chaque plateforme
3 - Les frameworks Javascript orientés mobile permettant le développement d'applications dites " hybrides " (React Native, Nativescript)
4 - Enfin, pionnières du cross-plateforme, les technologies permettant d'encapsuler des pages web dans une application mobile (Ionic, Webviews)
Selon Bitrise, la répartition actuelle montre que si le développement natif reste majoritaire (70% des apps), les solutions React Native (15% environ) et plus récemment Flutter (8%) trouvent un certain écho face à l'enjeu de mutualisation d'un certain nombre d'acteurs.
Comment et sur quels critères faire son choix ?
Les technologies natives - les plus onéreuses puisqu'elles demandent deux développements et une maintenance de deux codes - sont les plus abouties en termes d'expérience client.
Le choix pourrait être a priori simple : si vous avez les moyens, ne vous privez pas du meilleur. Néanmoins rien ne sert de surinvestir si vos clients, de par leur usage, n'ont pas le besoin d'une expérience "premium".
Usage : Plus votre activité génère une fréquence d'interaction forte (transactionnel, self-care) avec vos clients, plus ce dialogue devrait s'effectuer via votre application (notamment vs votre site mobile) pour des questions de rapidité et de simplicité. C'est pour cette raison que les réseaux sociaux ont des approches "app-first" (voire "app-only").
Fonctionnel : Plus votre fonctionnel sera complexe et utilisera les ressources du téléphone (cartographie temps réel, NFC ou Bluetooth, usage en mode offline, contenus vidéo, 3D ou réalité augmentée,...) plus votre app sera privilégiée par les consommateurs pour des questions de performance. Même pour des usages ponctuels (d'où le développement des App Clips d'Apple récemment).
Budget : Bien évidemment plus vos contraintes budgétaires seront fortes, plus vous rechercherez des solutions de mutualisation. Attention néanmoins à ne pas imaginer que vous diviserez par deux vos coûts de développement et de maintenance. La réalité se situe plutôt à -20% ou -30% selon la solution choisie.
Culture d'entreprise : Si vous avez un objectif d'internalisation, les expertises techniques maîtrisées au sein de l'entreprise doivent entrer en ligne de compte afin de faciliter la montée en compétence de vos équipes et l'intégration de la technologie.
Expérience client & image : L'app - notamment vs le positionnement de votre marque - peut également être un investissement en termes d'image, qui peut justifier le choix du natif, afin d'offrir le meilleur à la (parfois petite) base de votre clientèle la plus fidèle.
Profils clients : Le profil de vos clients (CSP+, clientèle B2B avec des flottes) peut également vous pousser à un choix particulier de technologie. Certains acteurs du luxe font ainsi le choix de développer en natif sur iOS et d'investir sur une TWA (Trusted Web Activity) sur Android.
S'il reste difficile de mesurer l'impact business de votre choix, il est nécessaire de le projeter dans une vision à 3/5 ans en intégrant une vision plus large de votre plateforme digitale généralement omnicanale.
Quelles sont les grandes stratégies ?
Chez USERADGENTS, parmi les différents clients et prospects que nous croisons, quelques grandes stratégies se dégagent, que l'on résume (et simplifie forcément) ci-dessous :
"First Class" : Ils font le choix de l'optimisation de l'expérience applicative via un développement natif (Swift & Kotlin) avec un poids des critères ci-dessous variable d'un acteur à l'autre (banque, retail alimentaire ou acteurs du luxe font partie de cette catégorie).
Sur le web, certains adoptent une stratégie quasiment app only ("Uber" like) et investissent relativement peu quand d'autres proposent aussi le meilleur du web avec des sites en Javascript (React ou Vue), compatibles PWA (Progressive Web App), et s'appuyant - accrochez votre ceinture - sur des CMS headless et des back-ends en micro-services et graphQL qui servent site & apps. La crème de la crème.
Kotlin multiplatform, encore récent, semble offrir une base de mutualisation intéressante pour ces acteurs, sans compromis sur la performance.
Business : Ces acteurs font un choix équilibré. Ils utilisent Flutter ou React Native (selon les compétences internes ou le fonctionnel), parfois un mix de développement natif sur iOS (pour servir la clientèle "premium") et de TWA (une application basée sur une PWA donc du web "haut de gamme") sur Android. Attention à la dépendance à ces frameworks intermédiaires qui ne vont pas toujours aussi vite que les OS et peuvent être parfois abandonnés. Ces frameworks essayent aussi d'intégrer le web pour proposer une expérience "one code" forcément séduisante.
Économique : Ils voyagent en éco, mais emmènent leurs clients à la même destination. Ces acteurs n'ont pas un "business" apps extrêmement développé et donc proposent quand même une expérience plus facile d'accès à leurs clients les plus fidèles, mais en maximisant la mutualisation des coûts et la gestion via l'usage de solutions web, souvent maîtrisées en interne, qui peuvent être "haut de gamme", comme les PWA. Là aussi la promesse "one code" peut séduire certains acteurs de taille moyenne.
Pour aller plus loin dans votre choix & l'analyse des languages et différentes solutions, ou si certains points nécessitent des éclaircissements par rapport à votre entreprise, contactez-nous uainfo@useradgents.com ou téléchargez notre livre blanc gratuitement.