Flutter permet de créer une application iOS, Android, web et de bureau à partir d'un seul code en Dart. Fonctionnement, avantages, comparaison avec React Native et cas où il vaut mieux choisir autre chose.
Flutter est le kit de développement open source de Google qui permet de créer des applications mobiles (iOS et Android), web et de bureau à partir d’une seule base de code, écrite en langage Dart. Ce n’est pas un langage de programmation mais un framework d’interface : il dessine lui-même chaque pixel de l’écran, ce qui garantit une interface identique et fluide sur toutes les plateformes. C’est un excellent choix pour une application mobile sur iOS et Android avec un budget et des délais maîtrisés, beaucoup moins pour un site riche en contenu qui doit être bien référencé.
On présente ici ce qu’est Flutter et comment il fonctionne, la différence entre Flutter et Dart, ses avantages réels, les types d’applications que l’on peut créer, une comparaison avec React Native, Kotlin Multiplatform et le développement natif, puis les cas où Flutter n’est pas le bon outil. Les informations de version sont à jour de septembre 2026.
- Qu’est-ce que Flutter ?
- Flutter est-il un langage de programmation ?
- Comment fonctionne Flutter ?
- Pourquoi choisir Flutter pour développer une application ?
- Quels types d’applications peut-on créer avec Flutter ?
- Flutter, React Native, Kotlin Multiplatform ou natif : que choisir ?
- Flutter est-il adapté aux startups et aux MVP ?
- Flutter est-il l’avenir du développement mobile ?
- Dans quels cas Flutter n’est-il pas le bon choix ?
- Comment se déroule un projet d’application Flutter ?
- Questions fréquentes
- Sources
Qu’est-ce que Flutter ?

Flutter est un SDK (kit de développement logiciel) créé par Google pour concevoir des interfaces d’applications multiplateformes. Un développeur écrit le code une fois, et Flutter produit une application pour Android, iOS, le web, Windows, macOS et Linux.
Quelques repères dans son histoire :
- 4 décembre 2018 : sortie de Flutter 1.0, première version stable, pour iOS et Android.
- Mai 2022 : Flutter 3 est stable sur les six plateformes, avec l’arrivée de macOS et Linux.
- 12 août 2026 : sortie de Flutter 3.47, la version stable la plus récente au moment où nous écrivons. Google publie une version stable environ tous les trois mois.
Flutter est gratuit et distribué sous licence open source BSD-3-Clause. Son dépôt GitHub compte près de 179 000 étoiles en septembre 2026, signe d’une communauté très active. La vitrine officielle cite de nombreuses applications en production : chez Google (Google Pay, Google Earth, Google Ads, Google Classroom, NotebookLM), mais aussi BMW, Toyota, eBay, Alibaba, Nubank, Headspace, Wolt, et en France SNCF Connect et Crédit Agricole. Alibaba y indique que Flutter a réduit le temps de développement d’une nouvelle fonctionnalité d’un mois à deux semaines.
Flutter est-il un langage de programmation ?
Non. Flutter est un framework, ou plus précisément un SDK : un ensemble de composants prêts à l’emploi (les widgets), de bibliothèques, d’outils (compilation, débogage, tests) et de documentation. Le langage dans lequel on écrit une application Flutter s’appelle Dart, également créé par Google.
SDK, framework, langage : les différences
- Langage : la syntaxe dans laquelle on écrit les instructions (Dart, JavaScript, Kotlin, Swift).
- Framework : une structure et des composants qui imposent une façon d’organiser le code et évitent de tout réinventer.
- SDK : le paquet complet à installer pour développer sur une plateforme (framework, compilateurs, outils, documentation, exemples).
Il existe des SDK natifs, propres à une plateforme (le SDK Android, le SDK iOS d’Apple), et des SDK multiplateformes comme Flutter. Avec les SDK natifs, une application Android et une application iOS sont deux développements distincts. Avec Flutter, la même base de code sert aux deux.
Qu’est-ce que Dart, le langage de Flutter ?
Dart est un langage orienté objet, à typage statique, dont la syntaxe rappelle Java, C#, Kotlin ou JavaScript. Un développeur qui connaît l’un de ces langages le prend en main en quelques jours. Sa documentation officielle met en avant trois points :
- Compilation JIT en développement (juste à temps) : la machine virtuelle Dart recompile uniquement ce qui change, ce qui permet le « hot reload ».
- Compilation AOT en production (anticipée) : le code est traduit en code machine ARM ou x64, pour un démarrage rapide et des performances régulières. Pour le web, Dart compile en JavaScript ou en WebAssembly.
- Sécurité face aux valeurs nulles : une variable ne peut pas être vide sauf si on l’autorise explicitement, ce qui élimine une catégorie entière de plantages avant même l’exécution.
Dart reste un langage de niche en dehors de Flutter : 6 % des répondants à l’enquête Stack Overflow 2024 déclarent l’utiliser. Recruter un développeur Dart expérimenté est donc plus difficile que pour JavaScript, mais la montée en compétence d’un développeur mobile ou web est rapide.
Comment fonctionne Flutter ?
Tout est widget
Dans Flutter, tout élément d’interface est un widget : un bouton, un texte, une marge, une mise en page, une animation, un défilement. On compose l’écran en imbriquant des widgets, comme des briques. Cela demande un temps d’adaptation, puis devient très logique. Flutter fournit deux grandes familles : les widgets Material, qui suivent le langage de design de Google, et les widgets Cupertino, qui reproduisent le style iOS. Rien n’empêche de créer une interface entièrement personnalisée aux couleurs de votre marque.
Un moteur de rendu intégré
C’est la grande différence avec la plupart des autres solutions multiplateformes. Flutter n’utilise pas les composants d’interface du système : il embarque son propre moteur et dessine chaque pixel. Ce moteur s’appelle Impeller. Il précompile ses shaders (les petits programmes graphiques) au moment de la construction de l’application, ce qui supprime les saccades que provoquait leur compilation à la volée. Impeller est le seul moteur sur iOS depuis Flutter 3.27, le moteur par défaut sur Android (à partir d’Android 10), et le devient sur Windows, macOS et Linux avec Flutter 3.47. Sur le web, Flutter utilise encore Skia, l’ancien moteur.
Conséquence directe : l’interface est la même au pixel près sur tous les appareils, et il n’y a pas de « pont » à traverser entre le code de l’application et les composants natifs pour afficher l’écran, ce qui limite les ralentissements.
Le hot reload
Le hot reload (rechargement à chaud) injecte une modification de code dans l’application en cours d’exécution, sans la redémarrer et sans perdre l’écran sur lequel on se trouve. Le développeur voit le résultat en une seconde environ (978 millisecondes dans l’exemple de la documentation officielle), sur un émulateur ou un vrai téléphone. Pour ajuster une interface ou corriger un bug, le gain de temps au quotidien est considérable.
L’accès aux fonctions du téléphone
Caméra, géolocalisation, notifications, paiement, capteurs : Flutter y accède par des plugins, dont un grand nombre sont publiés sur le dépôt officiel pub.dev. Quand un plugin n’existe pas, le développeur écrit un petit morceau de code natif (Kotlin pour Android, Swift pour iOS) et le relie à l’application Flutter.
Pourquoi choisir Flutter pour développer une application ?
- Une seule base de code : une équipe au lieu de deux, un seul code à maintenir, des évolutions livrées en même temps sur iOS et Android. C’est l’argument économique principal.
- Un développement rapide : le hot reload et la bibliothèque de widgets accélèrent la construction et les ajustements d’interface.
- Une interface identique partout : pas de mauvaise surprise d’affichage d’une plateforme à l’autre, ce qui simplifie aussi le travail des designers.
- De bonnes performances : code compilé en natif et moteur de rendu dédié, qui vise 60 images par seconde, et 120 sur les écrans qui le permettent.
- Des tests simplifiés : Flutter intègre des outils de tests unitaires, de widgets et d’intégration. Une logique testée une fois l’est pour toutes les plateformes, même si un passage sur de vrais appareils iOS et Android reste indispensable.
- Des thèmes adaptables : une même application peut adopter l’apparence Material sur Android et Cupertino sur iOS si vous le souhaitez.
- Un outil gratuit et soutenu : open source, maintenu par Google qui l’utilise pour ses propres produits, avec une documentation de qualité.
Quels types d’applications peut-on créer avec Flutter ?
Applications mobiles
C’est le cœur de Flutter. En septembre 2026, Flutter 3.47 prend en charge Android à partir de l’API 24 (Android 7) et iOS à partir de la version 15. Applications métier, e-commerce, réservation, application compagnon d’un objet connecté, banque : tous ces usages figurent dans la vitrine officielle. Si vous hésitez encore entre une application mobile et un site, notre article sur les différences entre application native et application web aide à trancher.
Applications web
Flutter compile pour le navigateur en JavaScript ou en WebAssembly. La documentation officielle est claire sur son périmètre : il convient aux applications web interactives (applications monopages, progressive web apps, version web d’une application mobile existante), pas aux sites de contenu. Elle précise que Flutter « n’est pas adapté aux sites statiques riches en texte », comme un blog, et que son rendu ne correspond pas à ce dont les moteurs de recherche ont besoin pour bien indexer une page. Google recommande de garder les pages marketing et d’aide en HTML classique.
Applications de bureau
Windows 10 et 11, macOS (à partir de Monterey) et Linux (Debian, Ubuntu) sont pris en charge. C’est utile pour un outil interne ou un logiciel métier qui doit aussi exister sur tablette ou téléphone.
Écrans embarqués
Flutter sert aussi à des interfaces sur des appareils autres que les ordinateurs et téléphones : Toyota et LG Electronics figurent dans la vitrine officielle. Ces projets demandent toutefois une intégration spécifique au matériel et sortent du cadre d’une application classique.
Flutter, React Native, Kotlin Multiplatform ou natif : que choisir ?
Flutter n’est pas seul. Dans l’enquête Stack Overflow 2024, 9,4 % des répondants déclarent utiliser Flutter et 8,4 % React Native : les deux solutions sont au coude à coude. Kotlin Multiplatform progresse aussi depuis que JetBrains a déclaré stable, en mai 2025, sa bibliothèque d’interface partagée pour iOS (Compose Multiplatform 1.8.0). Côté Microsoft, Xamarin n’est plus pris en charge depuis le 1er mai 2024 : les projets doivent migrer vers .NET MAUI.
| Critère | Flutter | React Native | Kotlin Multiplatform | Natif (Swift et Kotlin) |
|---|---|---|---|---|
| Langage | Dart | JavaScript ou TypeScript | Kotlin | Swift pour iOS, Kotlin pour Android |
| Interface | Dessinée par Flutter, identique partout | Composants natifs de chaque système | Partagée (Compose) ou native, au choix | Native |
| Code partagé | Quasi total | Très élevé | Logique métier, interface en option | Aucun |
| Point fort | Interfaces sur mesure, cohérence, rapidité de développement | Réutilise les compétences web React | Intégration fine dans une app Android existante | Accès immédiat aux nouveautés système, performances maximales |
| Point faible | Dart moins répandu, web peu adapté au SEO | Dépendances JavaScript à surveiller | Écosystème plus jeune côté iOS | Deux développements, deux budgets |
Pour résumer : si votre équipe maîtrise déjà React, React Native est un choix naturel (voir notre comparatif des frameworks JavaScript). Si vous partez de zéro et voulez une interface très travaillée sur iOS et Android, Flutter est souvent le plus productif. Le natif reste pertinent pour les applications qui exploitent en profondeur les capacités d’un seul système (réalité augmentée avancée, traitement audio ou vidéo intensif, fonctions tout juste annoncées par Apple ou Google).
Flutter est-il adapté aux startups et aux MVP ?
Oui, c’est même l’un de ses meilleurs terrains. Une startup doit tester son idée vite, avec un budget serré, sur les deux grands systèmes mobiles à la fois. Flutter répond à ces trois contraintes :
- Un coût réduit : une seule équipe et un seul code pour iOS et Android, sans licence à payer.
- Un délai de mise sur le marché plus court : widgets prêts à l’emploi, hot reload, et une version web ou de bureau possible plus tard sans tout réécrire.
- Des itérations rapides : après les premiers retours utilisateurs, l’interface se modifie vite, ce qui correspond à la logique du produit minimum viable (MVP).
- Une image soignée dès la première version : l’interface sur mesure permet de se démarquer sans multiplier le travail par deux.
Le point de vigilance est la suite : prévoyez dès le départ une architecture propre (séparation de l’interface et de la logique, gestion d’état claire, tests), sinon le MVP devient difficile à faire évoluer quand l’application grandit.
Flutter est-il l’avenir du développement mobile ?
Personne ne peut garantir l’avenir d’un framework, mais plusieurs signaux sont rassurants. Google utilise Flutter pour ses propres produits, dont Google Pay, Google Ads et NotebookLM, ce qui l’engage à le maintenir. Le rythme de publication est régulier, avec une version stable par trimestre en 2026 (3.41 en février, 3.44 en mai, 3.47 en août). Le moteur de rendu a été entièrement remplacé ces dernières années par Impeller, un chantier lourd que l’on n’entreprend pas sur un outil en fin de vie. Enfin, la licence open source protège les utilisateurs : même dans le pire des cas, le code reste disponible et la communauté peut le maintenir.
Il serait en revanche exagéré de dire que Flutter va remplacer le développement natif ou React Native. Les trois approches coexistent, chacune avec ses points forts. La bonne question n’est pas « quelle technologie va gagner ? » mais « laquelle convient à mon application, à mon équipe et à mon budget pour les cinq prochaines années ? ». Pour un projet qui démarre et vise iOS et Android, Flutter fait clairement partie des options à étudier en premier.
Dans quels cas Flutter n’est-il pas le bon choix ?
- Un site vitrine, un blog ou une boutique qui vit du référencement naturel : un CMS comme WordPress ou un site HTML sera bien mieux indexé. Google le dit lui-même dans la documentation de Flutter web.
- Une application qui dépend des toutes dernières fonctions d’iOS ou d’Android : les plugins Flutter arrivent parfois après les annonces d’Apple et de Google, et il faut alors écrire du code natif.
- Une contrainte forte de poids : le moteur de rendu embarqué alourdit l’application par rapport à une application native minimale.
- Une équipe entièrement JavaScript : React Native ou une progressive web app valorisera mieux les compétences existantes.
- Un besoin d’apparence strictement native, mise à jour avec chaque version du système : Flutter imite les composants iOS et Android, il ne les utilise pas.
Comment se déroule un projet d’application Flutter ?
- Cadrage : objectifs, utilisateurs, fonctionnalités de la première version, plateformes visées, contraintes (données personnelles, paiement, hors ligne).
- Conception UX et UI : parcours, wireframes puis maquettes, validés avant la moindre ligne de code.
- Architecture : choix de la gestion d’état, de l’API et du back-office, des plugins nécessaires, des services cloud.
- Développement par itérations : livraisons régulières testables sur téléphone, grâce aux versions de test d’Apple et de Google.
- Tests : tests automatisés, puis tests sur un panel d’appareils réels iOS et Android.
- Publication : soumission sur l’App Store et Google Play, qui ont chacun leurs règles de validation.
- Maintenance : mises à jour de Flutter et des plugins, compatibilité avec les nouvelles versions d’iOS et d’Android, évolutions fonctionnelles.
Le budget dépend surtout du nombre d’écrans, des intégrations (paiement, API tierces, back-office) et du niveau de finition. Si vous avez un projet d’application et hésitez sur la technologie, notre équipe dédiée aux applications web et mobiles sur mesure vous aide à choisir entre Flutter, une application web progressive ou un autre outil, en fonction de vos utilisateurs et de votre budget.
Questions fréquentes
Flutter est-il gratuit ?
Oui. Flutter est open source sous licence BSD-3-Clause et peut être utilisé gratuitement, y compris pour des applications commerciales. Seuls les comptes développeur Apple et Google Play sont payants pour publier dans les magasins d’applications.
Quelle est la différence entre Flutter et Dart ?
Dart est le langage de programmation, Flutter est le framework d’interface écrit en Dart. On code en Dart, on construit l’interface avec les widgets de Flutter.
Une application Flutter est-elle une vraie application native ?
Elle est compilée en code machine natif et publiée sur l’App Store et Google Play comme une application native. La différence est que son interface est dessinée par Flutter et non par les composants du système.
Peut-on faire un site web avec Flutter ?
On peut faire une application web, pas un site de contenu. Pour un site qui doit être trouvé sur Google, la documentation officielle recommande du HTML classique ou un outil dédié.
Flutter ou React Native, lequel est le plus utilisé ?
Ils sont proches : 9,4 % des répondants de l’enquête Stack Overflow 2024 utilisent Flutter, 8,4 % React Native. Le bon choix dépend surtout des compétences de votre équipe et du type d’interface visé.
Sources
- Documentation Flutter : what’s new (versions 3.41, 3.44, 3.47)
- Documentation Flutter : plateformes prises en charge
- Documentation Flutter : moteur de rendu Impeller
- Documentation Flutter : hot reload
- Documentation Flutter : performances de l’interface (60 et 120 images par seconde)
- Documentation Flutter : FAQ Flutter web (SEO et cas d’usage)
- Flutter : vitrine des applications
- Documentation Dart : présentation du langage
- Dépôt GitHub de Flutter (licence, étoiles)
- Google Developers Blog : Flutter 1.0 (décembre 2018)
- Flutter Blog : What’s new in Flutter 3 (mai 2022)
- Stack Overflow Developer Survey 2024 : technologies
- Microsoft : fin du support de Xamarin (1er mai 2024)
- JetBrains : Compose Multiplatform 1.8.0, iOS stable (mai 2025)





