Flutter, natif ou React Native pour une application d'entreprise ?

Pour la grande majorité des applications d'entreprise, Flutter est le meilleur choix : une seule base de code pour iPhone et Android, des performances proches du natif et un coût nettement plus bas. Le natif reste préférable pour quelques cas précis, liés à des fonctions très spécifiques du téléphone.

Par Victor Boyadjian, mis à jour le

Je développe en Flutter, notamment Pesto.

Ce que change une seule base de code

Une application native s'écrit deux fois : en Swift pour iPhone et en Kotlin pour Android. Avec Flutter, le même code produit les deux applications. Le développement, les tests et chaque évolution ne sont faits qu'une fois, et les deux versions restent identiques.

Sur un projet, cela se traduit par un budget et des délais nettement inférieurs à deux développements natifs (voir le prix d'une application mobile).

Les performances sont-elles suffisantes ?

Oui pour les usages courants : listes, formulaires, cartes, animations, paiement, notifications, vidéo. Flutter dessine lui-même son interface et la compile en code natif, ce qui donne une application fluide.

Pesto, développée en Flutter, fait par exemple tourner un assistant vocal qui lit les recettes et répond aux questions.

Quand le natif reste préférable

  • Une application centrée sur une fonction très récente d'iOS ou d'Android, disponible en natif avant d'être accessible depuis Flutter
  • Des widgets d'écran d'accueil, des montres connectées ou des extensions complexes, qui demandent du code natif de toute façon
  • Des traitements graphiques ou audio très poussés, comme un jeu 3D ou un logiciel de montage
  • Une équipe interne déjà composée de développeurs iOS et Android

Même dans ces cas, on peut souvent garder Flutter pour l'essentiel et écrire en natif seulement la partie concernée.

Flutter ou React Native ?

React Native, porté par Meta, permet aussi une seule base de code pour iPhone et Android. La différence principale : React Native s'appuie sur les composants d'interface du téléphone, alors que Flutter dessine toute l'interface lui-même.

  • Flutter donne un rendu identique sur iPhone et Android et des animations fluides, avec le langage Dart
  • React Native utilise JavaScript ou TypeScript, ce qui peut convenir à une équipe qui fait déjà du web en React
  • Les deux sont matures et utilisés en production par de grandes entreprises

Pour une application d'entreprise développée par un prestataire, le choix dépend surtout de l'équipe qui la maintiendra. Je développe en Flutter.

Et FlutterFlow ou le no-code ?

FlutterFlow et les outils no-code permettent de construire une application visuellement, plus vite au départ. Ils conviennent aux prototypes et aux applications simples. Leurs limites apparaissent quand la logique devient spécifique ou que l'application doit évoluer longtemps : le code généré est plus difficile à maintenir, et vous dépendez de l'outil.

Questions fréquentes

Flutter est-il un choix durable ?

Flutter est développé par Google et utilisé par de nombreuses entreprises pour des applications en production. Le code Dart reste lisible et peut être repris par n'importe quel développeur Flutter.

Une application Flutter est-elle acceptée par Apple ?

Oui. Elle est publiée sur l'App Store exactement comme une application native.

Guides liés

Exemples de projets

Vous hésitez encore sur la technologie ?

Présentez-moi votre projet. Je vous dis honnêtement si Flutter convient, ou si une partie doit être développée en natif.

Ou écrivez-moi à victor.boyadjian5@gmail.com