arrow_back

Flutter Connection 2025 : les 4 points qu’il fallait retenir cette année

Marion Griesemann Responsable Éditoriale
Jeshanth Jeyachelvan DÉVELOPPEUR FLUTTER
Maxence Venel DÉVELOPPEUR FLUTTER
28 Avril 2025 • Lecture 10 min

Qui dit mois d’avril dit Flutter Connection, the “French Flutter Conference” itself à laquelle les développeurs USERADGENTS ne dérogent pas depuis quelques années déjà. Cet événement consacré exclusivement à la communauté Flutter permet de prendre un shot d’inspiration pour les projets mobiles et de découvrir des nouvelles possibilités autour de cette technologie cross-plateforme majeure sur le marché. Durant la série de présentations passionnantes qui a animé les deux jours, beaucoup d’informations et d’innovations ! Nos envoyés spéciaux sur le terrain (oui, rien que ça), Maxence Venel et Jeshanth Jeyachelvan vous proposent d’en retenir 4 au prisme des préoccupations principales pour le secteur actuellement et pour nos clients.

La qualité, rien que la qualité

Offrir des services à la qualité optimale, que ce soit en termes de performance ou dans le soin à apporter à son code, c’est le challenge commun à tout bon développeur ! C’est en tout cas ce que se sont attachés à prouver plusieurs intervenants de la Flutter Connection en revenant sur des problématiques fréquentes lorsqu’on travaille sur ce framework.

D’abord, les fuites mémoires : un problème courant mais souvent discret dans les applications qui affecte les performances sans toujours être immédiatement détectées. Concrètement, on dit qu’une fuite mémoire survient lorsqu’une partie de la mémoire reste allouée sans être libérée, même si elle n’est plus utilisée par l’application. Durant son talk, Majid Hajian (Google Developer Expert Flutter) a mis en lumière que ces fuites résultent fréquemment de références persistantes non gérées, telles que des TextEditingController, des StreamSubscription ou des AnimationController, qui demeurent actives alors que leur utilisation n'est plus nécessaire. Pour pallier ça, il préconise l’utilisation de Flutter DevTools pour analyser et surveiller la consommation mémoire de l'application et détecter les anomalies potentielles ainsi que l’intégration de packages spécialisés comme leak_tracker et memory_usage qui automatisent la détection des fuites mémoire. Il est essentiel aussi d’adopter quelques bonnes pratiques : libérer explicitement les ressources inutilisées, disposer correctement des contrôleurs et surveiller régulièrement l'état de la mémoire pour prévenir les fuites. 

Il est donc rassurant de voir que les fuites mémoire ne sont pas une fatalité. Avec une vigilance constante et l'application de pratiques rigoureuses, il est possible de maintenir des performances optimales dans les applications Flutter.

Côté qualité et cohérence du code Dart cette fois, les conférences de cette année ont démontré l’intérêt d’adopter des outils d'analyse statique tels que DCM (Dart Code Metrics). DCM offre plus de 350 règles de linting personnalisables, 22 métriques de code et diverses commandes de refactoring. Il aide les développeurs à identifier et corriger les problèmes potentiels avant même les revues de code. Des équipes comme celles de Dart et Flutter DevTools utilisent d’ailleurs DCM pour valider continuellement leur code pour améliorer sa lisibilité et sa maintenabilité.

"En intégrant DCM dans le flux de travail, les équipes peuvent bénéficier d'une détection précoce des problèmes, d'une réduction de la dette technique et d'une amélioration générale du code. Chez Useradgents, nous utilisons SonarQube combiné avec une analyse locale et c’est un vrai gage de qualité. Plus globalement, ces principes et préconisations, aussi bien en matière de code que de fuite mémoire, sont intégrés dans notre guide interne de bonnes pratiques, commun à l’ensemble des développeurs."

Jeshanth Jeyachelvan, Développeur Flutter

Intégration & déploiement continus (CI/CD), les incontournables

La Flutter Connection ne serait pas une bonne Flutter Connection si on ne parlait pas CI/CD, pratiques fondamentales pour rendre les services robustes sur la durée. Nos développeurs ont pu profiter de plusieurs retours d’expérience concrets, comme ceux de François Nollen (Ingénieur et DevRel chez SNCF Connect & Tech) et Adrien Body (Développeur Kotlin & Flutter), mais en la matière, c’est la conférence de Mangirdas Kazlauskas (Google Developer Expert Flutter & Dart) qui nous a semblé la plus novatrice. Il a présenté les avantages des mises à jour Over-The-Air (OTA) qui permettent de déployer des modifications sans passer par le processus de validation des stores, notamment grâce à des outils comme Firebase Remote Config, Remote Flutter Widgets (RFW) et Shorebird. Shorebird, en particulier, se distingue par sa capacité à gérer des mises à jour “à chaud” du code compilé, offrant une flexibilité accrue pour corriger rapidement des bugs ou ajouter de petites fonctionnalités.

Attention, l’utilisation de ces technologies doit être envisagée avec précaution. Elles sont particulièrement adaptées pour des correctifs mineurs ou des ajustements de contenu mais ne remplacent pas les mises à jour traditionnelles via les stores. À ce jour, aucune directive officielle de Google Play ou de l’App Store interdit l’utilisation de ces solutions mais cela pourrait évoluer à l’avenir, redéfinissant potentiellement la manière dont les applications seront validées.

Un point crucial est que l’intégration de ces outils doit être planifiée dès le début du développement de l’application. En effet, pour permettre des mises à jour OTA, le code nécessaire (comme celui de Shorebird) doit être présent dès la première version de l’application. Cela évite les décalages entre les utilisateurs et garantit une adoption homogène de ces fonctionnalités.

Mangirdas Kazlauskas a également mis en avant Crowdin, une solution idéale pour la gestion multilingue. En utilisant un CDN1, les traductions peuvent être mises à jour dynamiquement, sans besoin de rebuild, simplifiant ainsi la localisation des applications. Cela permet de maintenir une expérience utilisateur cohérente et adaptée à chaque langue, sans nécessiter de nouvelles soumissions sur les stores. Chez Useradgents, nous utilisons actuellement Localize pour gérer la traduction dans nos applications. C’est très efficace pour les besoins standards mais il manque certains des avantages proposés par Crowdin.

Mais c’est l’utilisation de l’intelligence artificielle pour générer des interfaces utilisateurs dynamiques qui a le plus retenu l’attention de nos développeurs. Ces interfaces pourraient s’adapter automatiquement au contexte et aux préférences des utilisateurs pour offrir une personnalisation en temps réel. En combinant les mises à jour OTA avec des algorithmes d’IA, il devient possible de créer des applications plus vivantes, capables de répondre instantanément aux besoins des utilisateurs.

"Les mises à jour OTA, comme celles proposées par EAS pour React Native, sont des solutions particulièrement adaptées à nos problématiques clients. Elles permettent de répondre plus rapidement aux besoins d’évolution des applications, sans passer systématiquement par les stores. Les correctifs de bugs peuvent aussi être déployés instantanément."

Prigent Roudaut, Head of Mobile

2025 sera éthique ou ne sera pas

Les enjeux RSE ont transpiré dans la quasi totalité des interventions cette année et ça tombe plutôt bien car c’est aussi une préoccupation majeure et un chantier prioritaire actuellement pour les développeurs de USERADGENTS et l’ensemble du marché. 

Eco-conception

Durant son talk, Jaime Blasco (Google Developer Expert Flutter) a décrypté l’un des outils les plus puissants et souvent sous-estimés de Flutter : les Slivers. Ces widgets permettent de gérer les scrolls complexes de manière optimisée, en ne chargeant les éléments que lorsqu’ils deviennent visibles à l’écran. Contrairement à des approches plus classiques comme SingleChildScrollView, les Slivers offrent un gain significatif en performance. Particulièrement utile pour les listes longues ou les interfaces complexes très gourmandes en ressources. L’un des points forts des Slivers est leur flexibilité. Ils permettent de combiner plusieurs zones scrollables indépendantes sur un même écran, comme des listes, des filtres ou des headers flottants. Chaque zone peut être gérée de manière autonome tout en maintenant la fluidité.

"Les Slivers, c’est une solution très intéressante et surtout responsable pour les développeurs cherchant à optimiser leurs applications Flutter. Ils permettent de réduire la surcharge de données tout en améliorant les performances et en garantissant une expérience utilisateur fluide, même sur des interfaces exigeantes."

Maxence Venel, Développeur Flutter

De son côté, Simon Eckerstorfer (Software Engineer chez LEAN-CODERS) a abordé un autre sujet essentiel pour les développeurs d’applications : la géolocalisation ou plutôt comment optimiser ses performances tout en économisant la batterie des utilisateurs. En effet, la géolocalisation est une fonctionnalité puissante mais elle peut rapidement devenir un gouffre énergétique si elle n’est pas bien gérée. Parmi les solutions proposées pour éviter d’y plonger, on retiendra : 

  • L’utilisation de SQLite et PostGIS pour gérer les données géographiques en mode offline. Ces outils permettent de stocker et de traiter localement les informations de géolocalisation, réduisant la dépendance aux requêtes réseau. Cela améliore non seulement les performances, mais aussi l’expérience utilisateur, en garantissant un accès rapide aux données même sans connexion Internet.
  • Les algorithmes de détection de mouvements qui permettent de désactiver temporairement les mises à jour GPS lorsque l’utilisateur est immobile pour économiser la batterie sans compromettre la précision de la géolocalisation.
  • Les outils de tests comme Lockito (Android) et RocketSim (iOS) qui simulent des positions GPS. Particulièrement utiles pour tester des scénarios complexes, comme des itinéraires ou des changements rapides de localisation, sans avoir à se déplacer physiquement !

Accessibilité

À partir du 28 juin 2025, l’European Accessibility Act imposera à toutes les applications mobiles de respecter des standards stricts en matière d’accessibilité. Cette réglementation vise à garantir que les interfaces soient utilisables par tous, y compris les personnes ayant des besoins spécifiques et/ou celles en situation de handicap. Si USERADGENTS a récemment sorti un guide pratique gratuit pour accompagner les entreprises dans leur mise en conformité, la Flutter Connection a aussi apporté son lot de conseils pour faciliter la transition pour les développeurs, avec notamment la présentation des Semantics.

Les Semantics sont un système intégré à Flutter qui constitue un pont entre l’interface utilisateur et les technologies d’assistance, comme VoiceOver sur iOS ou TalkBack sur Android. Il permet de décrire l’interface de manière compréhensible pour ces outils, en fournissant des informations sur les widgets, leur rôle, leur état et leurs interactions. 

Techniquement, deux concepts guide l’usage des Semantics : 

  • SemanticsOwner gère l’arbre des Semantics (ou Semantic Tree), une structure hiérarchique qui représente l’interface accessible. Cet arbre est généré à partir de l’arbre des widgets et du rendu puis traduit le tout en informations compréhensibles pour les technologies d’assistance. Il ne contient que les informations pertinentes pour l’accessibilité comme les boutons ou les champs de texte et exclut les éléments purement décoratifs (ex : les images sans importance pour la compréhension) pour éviter de surcharger les lecteurs d’écran.
  • SemanticsBinding agit comme un lien entre Flutter et les plateformes natives (iOS et Android), permettant de transmettre les informations de l’arbre des Semantics aux API d’accessibilité des systèmes d’exploitation.

"En 2025, l’accessibilité n’est pas une contrainte, c’est une nécessité. En investissant dans l’accessibilité dès la conception, on crée une application plus robuste, plus universelle et prête à répondre aux exigences légales et éthiques. Ignorer ces aspects, c’est risquer de perdre une partie de son audience et de manquer une occasion de faire la différence. Flutter, avec son système de Semantics, nous donne les moyens de relever ce défi assez simplement et c’est pour nous une vraie bonne nouvelle."

Jeshanth Jeyachelvan, Développeur Flutter

Mutualiser pour mieux régner 

Durant sa conférence, Salih Guler (Senior Developer Advocate chez AWS) a présenté une approche innovante pour mutualiser le code entre le front-end (Flutter) et le back-end (Dart) en utilisant des outils comme Serverpod et Shelf. Les objectifs affichés ? Simplifier le développement full-stack, réduire les redondances, optimiser le temps de développement et faciliter la maintenance.
Serverpod s’est particulièrement distingué aux yeux de nos développeurs car il offre une solution clé en main pour gérer la communication client-serveur de manière type-safe2 : la sérialisation et la désérialisation des données sont gérées automatiquement pour plus de sécurité. Grâce à la génération automatique de code, Serverpod simplifie la gestion des connexions et des WebSockets, permettant des mises à jour en temps réel sans effort supplémentaire. Contrairement à Shelf, qui nécessite une gestion manuelle des WebSockets et de la sérialisation des données, Serverpod automatise ces tâches, rendant le développement plus rapide et moins sujet aux erreurs. Shelf reste toutefois une option viable pour les développeurs qui préfèrent adopter une approche personnalisée.

"L’utilisation de Flutter pour le front-end, de Dart pour le back-end et des outils comme Serverpod ouvre de nouvelles perspectives pour le développement full-stack. Cette approche permet non seulement de gagner du temps, mais aussi de garantir une cohérence entre les différentes couches de l’application. Avec des fonctionnalités comme la génération automatique de code et la gestion native des WebSockets, Serverpod semble être un bon outil pour les équipes qui cherchent à développer des applications performantes et maintenables."

Maxence Venel, Développeur Flutter

Au terme de ces journées, nos développeurs repartent avec de belles idées en poche et des opportunités à expérimenter pour nos apps. À noter que de nombreux autres sujets ont été abordés durant les conférences de la Flutter Connection cette année. Ils confirment eux-aussi certaines de nos réflexions en cours depuis plusieurs mois voire années chez Useradgents, comme par exemple les méthodes d’AB testing ou l’importance de l’approche Atomic Design pour créer des design systems cohérents, responsables (car réduisant le nombre d’itérations) et qui favorisent une collaboration plus efficace entre designers et développeurs. Michael McRoskey de FlutterFlow est également revenu sur l’usage de la plateforme low-code / no-code prise en mains récemment par nos équipes et a introduit DreamFlow, une fonctionnalité d’intelligence artificielle qui permet de générer des applications complètes à partir de simples descriptions textuelles. Une avancée significative par rapport à ce que nous avions pu tester lors de notre première confrontation avec l’outil. FlutterFlow intègre aussi maintenant la création de composants réutilisables à exporter et intégrer dans les projets Flutter : très utile pour la gestion des design systems, du darkmode/lightmode et pour garantir la cohérence entre les différentes parties de l’application ! 

Vous avez besoin d’accompagnement dans le développement de vos applications Flutter ? Contactez-nous.

1  Serveur permettant de délivrer du contenu.

2  Pour éviter les erreurs dans la définition du type des variables.

Sur le même sujet

Étude : Pourquoi est-il urgent de refondre votre site en 2026 ?
10/06/2026

Étude : Pourquoi est-il urgent de refondre votre site en 2026 ?

Je découvre arrow_forward
Flutter 3.47 : le framework largue pour de bon Material et Cupertino
29/09/2026

Flutter 3.47 : le framework largue pour de bon Material et Cupertino

Je découvre arrow_forward
UAPP Observer Assurance & Mutuelle : le mobile attend encore sa révolution
24/09/2026

UAPP Observer Assurance & Mutuelle : le mobile attend encore sa révolution

Je découvre arrow_forward
UAPP Observer Sport 2026 : le match se joue aussi dans l'app
27/08/2026

UAPP Observer Sport 2026 : le match se joue aussi dans l'app

Je découvre arrow_forward
UAPP Observer Mobilités 2026 : quand l'application devient le service
28/07/2026

UAPP Observer Mobilités 2026 : quand l'application devient le service

Je découvre arrow_forward
UAPP Observer Pilotage de la maison 2026 : du canal utilitaire au tableau de bord du foyer
30/06/2026

UAPP Observer Pilotage de la maison 2026 : du canal utilitaire au tableau de bord du foyer

Je découvre arrow_forward
UAPP Observer Retail 2026 : Derrière les bonnes notes, les stratégies divergent
20/05/2026

UAPP Observer Retail 2026 : Derrière les bonnes notes, les stratégies divergent

Je découvre arrow_forward
UAPP Observer Luxe 2026 : des opportunités encore inexploitées
24/04/2026

UAPP Observer Luxe 2026 : des opportunités encore inexploitées

Je découvre arrow_forward
Guide pratique : Lancer votre app en maîtrisant le risque pour maximiser son impact
22/04/2026

Guide pratique : Lancer votre app en maîtrisant le risque pour maximiser son impact

Je découvre arrow_forward
UAPP observer Banque et Finance 2026 : l'application mobile n'est plus un canal, c'est le produit
25/03/2026

UAPP observer Banque et Finance 2026 : l'application mobile n'est plus un canal, c'est le produit

Je découvre arrow_forward
Comment KIABI & USERADGENTS embarquent  l'IA dans l'application KIABI ?
12/03/2026

Comment KIABI & USERADGENTS embarquent l'IA dans l'application KIABI ?

Je découvre arrow_forward
expand_less