- ACN_ATLAS
- Cours pratique
- Informatique
Formation Flutter : Développer des applications mobiles multi-plateformes avec Flutter

- Durée
- 3 jours
- Niveau
- Intermédiaire
- Modalités
- Présentiel / Distanciel
Description de la formation Flutter
Développé et publié par Google dans sa première version stable en décembre 2018, Flutter est un kit de développement logiciel/framework dont l'ambition peut être résumée de la façon suivante : simplifier le développement multiplateforme en mettant à disposition une base de code commune pour toutes les plate-formes.
Offrant des performances natives et des possibilités de personnalisation presque infinies, Flutter s'appuie sur des widgets et des composants permettant de construire des applications de manière très rapide. Sa programmation, réactive, s'appuie quant à elle sur le langage Dart (de Google également).
Cette formation Flutter vous permet d'appréhender les concepts et outils clé mis à disposition par Flutter, puis de voir comment les appliquer afin de créer une application avec Flutter.

Objectifs pédagogiques
Objectifs pédagogiques :
À l'issue de cette formation Flutter, vous aurez acquis les connaissances et compétences nécessaires pour :
- Connaître les Framework de développement mobile et la spécificité de Flutter
- Mettre en place un environnement de développement Flutter
- Concevoir l'architecture logicielle d'une application mobile multiplateforme
- Construire une interface responsive
- Développer avec Dart
Objectifs opérationnels
Objectif opérationnel :
Savoir créer des applications mobiles multiplateformes avec Flutter.
Programme
Contenu du cours, module par module
9 modules
- Présentation de Flutter et de son écosystème
- La place du moteur de rendu Skia
- Structure d'un projet Flutter
- Installation et configuration de l'environnement de développement
- Introduction au langage Dart : syntaxe, variables, types, fonctions.
Travaux pratiques
Description : Mise en place de l'environnement de développement, création d'un projet Flutter "Hello World" et exploration des fichiers générés.
- Structures de contrôle : if, else, switch, boucles.
- Fonctions et portée des variables.
- Programmation orientée objet : classes, héritage, interfaces, Mixin
- Gestion des exceptions et des erreurs.
- Concurrence avec Future, Stream, Isolate
- Pubspec : Gestion des dépendances
- Tests unitaires
Travaux pratiques
Description : Mise en place d’une architecture de classe service, data
- Comprendre la philosophie des widgets dans Flutter.
- Utilisation des widgets de base : Text, Image, Row, Column, Container.
- Gestion de la disposition et du style des widgets.
- Introduction aux widgets Material Design.Assets / Fonts
Travaux pratiques
Description : Création d'une interface comportant du texte, des images et des boutons, en utilisant les widgets standard de Flutter.
- Gestion des interactions de base : appuis, clics, longues pressions.
- Introduction au widget GestureDetector pour capter les gestes de l'utilisateur.
- Utilisation des composants interactifs : ElevatedButton, TextField, Checkbox, Switch.
- Réactivité des interfaces : feedback visuel, animations simples.
- Bonnes pratiques d'accessibilité et d'expérience utilisateur.
Travaux pratiques
Description : Création d'une interface comportant plusieurs éléments interactifs (boutons, champs de texte, cases à cocher). Utilisation de GestureDetector pour personnaliser des comportements gestuels (swipe, double tap, etc.). Mise en place de feedbacks visuels (changement de couleur, animation) lors d’une interaction. Validation : l’apprenant crée une mini-application qui réagit de manière appropriée aux différentes actions de l'utilisateur.
- Comprendre la notion d'état dans Flutter.
- Différence entre StatefulWidget et StatelessWidget.
- Introduction aux méthodes de gestion d'état : setState, Provider.
- Mise en place d'une architecture de gestion d'état simple.
Travaux pratiques
Description : Création d'une application avec des interactions utilisateur modifiant l'état de l'interface en temps réel.
- Comprendre le système de navigation de Flutter.
- Implémenter la navigation entre différentes pages.
- Passage de données entre les écrans.
- Utilisation de la navigation nommée.
Travaux pratiques
Description : Création d'une application multi-pages avec navigation et transfert d'informations entre les pages.
- Effectuer des requêtes HTTP avec le package http
- Consommer des API RESTful.
- Traitement et affichage des données JSON.
- Gestion des erreurs et des exceptions.
Travaux pratiques
Description : Développement d'une application consommant une l’API publique de Mistral AI, affichage des données et gestion des erreurs potentielles.
- Introduction à la persistance des données dans Flutter
- Utilisation de SharedPreferences pour le stockage clé-valeur
- Introduction à SQLite avec le package sqflite
- Sauvegarde et récupération de données locales.
Travaux pratiques
Description : Création d'une application permettant de stocker des informations utilisateur localement et de les récupérer à l'ouverture de l'application.
- Configuration du projet pour Android et iOS (AndroidManifest.xml, Info.plist).
- Création des certificats, profils de provisioning et keystore.
- Génération des fichiers APK, AAB (Android) et IPA (iOS).
- Création et configuration des comptes développeurs Google et Apple.
- Soumission des applications sur le Play Store et l’App Store via leurs plateformes respectives.
- Gestion des métadonnées, des captures d’écran, et suivi des retours utilisateurs.
Travaux pratiques
Description : Mise en œuvre complète du processus de publication : paramétrage du projet, génération des fichiers de build, création des comptes développeurs, et soumission effective sur les stores. L’apprenant devra simuler la mise en ligne d’une application réelle en respectant toutes les étapes officielles.
Travaux pratiques
L’approche pédagogique repose sur un apprentissage par la pratique structurée autour de plusieurs ateliers qui permettent d’isoler les concepts assez nombreux et qui pour certains marquent une nouvelle approche de la programmation. En effet, le langage DART sur lequel repose Flutter est basée sur la programmation réactive. Cela consiste à réagir aux changements d’état au lieu de manipuler directement l’interface. Dans un premier temps ça peut être déroutant et nous préférons proposer des ateliers dédiés à un concepts précis même si le formateur prend le soin de les agréger quand cela a un sens.
Nous prenons donc le soin de respecter une courbe d’apprentissage progressive et bien structurée pour introduire petit à petit les différents concepts (StaelessWidget, StatefulWidget, Provider, Bloc, etc.) en ne perdant jamais de vue le côté multiplateforme en partant toujours d’une problématique avant d’y répondre.
Programme mis à jour le 15/12/2025
Public concerné
Ce cours s’adresse aux développeurs ou chefs de projets amenés à participer à un projet de développement mobile multiplateformes à l’aide de Flutter, en particulier les développeurs maîtrisant la programmation réactive pour une utilisation plus efficace du langage Dart. En ce sens, le cours ne se veut pas restrictif vis-à-vis des développeurs orientés web : une connaissance de la programmation réactive suffira pour basculer sur un projet mobile multiplateforme en raison notamment de la facilité d’utilisation de Flutter.

Prérequis
Les participants à cette formation possèdent obligatoirement des connaissances de base en programmation, en particulier de la programmation réactive pour son usage avec le langage Dart. Bien qu’aucun langage ne soit discriminant vis-à-vis d’un autre, les apprenants disposent idéalement de notions sur JavaScript ou TypeScript ainsi qu’un langage tourné vers l’objet : Java, Kotlin, C#... Ces langages, privilégiés dans le domaine du développement mobile, faciliteront votre introduction vers Flutter et vers Dart. Des rappels des notions propres à l’objet et au mobile seront effectués pour les participants maîtrisant d’autres langages que ceux cités.
J’évalue mes connaissances pour vérifier que je dispose des prérequis nécessaires pour profiter pleinement de cette formation en faisant le test de prérequis.
Faire le testFinancement
Cette formation peut être prise en charge par votre entreprise, seule ou avec l’appui de son opérateur de compétences. Nous fournissons le devis et les pièces attendues par l’OPCO.
4,8/5
13 avis
« Mon avis sur le contenu du stage : "Contenu de qualité qui monte progressivement en puissance. Très enrichissant et formateur" Mon avis sur le formateur : "Disponible, compétent, agréable, bonne aisance à l'oral. Maxime est à l'aise avec son sujet et nous a donné plein de tips et de bonnes pratiques. " Ce que j'ai le plus apprécié : "Visio classique, bons partages d'écrans par le formateur" Ce que j'ai le moins apprécié : "Organisation par PLB assez médiocre : mauvais jours, inscription mal finalisée, mauvaises horaires communiquées. " »
RANACXWAN FRANCE « Mon avis sur le contenu du stage : "Très bonne formation, bien présentée et expliquée, adaptée à différents niveaux." Mon avis sur le formateur : "Très bon formateur, maîtrise son sujet, toujours à l'écoute et excellente pédagogie pour l'apprentissage." Ce que j'ai le plus apprécié : "L'écoute, la documentation et l'investissement des participants et du formateur." Ce que j'ai le moins apprécié : "Aucun" »
CLAWOX « Mon avis sur le formateur : "Top, j'ai beaucoup aimé nos échanges qui m'ont permis de comprendre très rapidement ce qui m'était imbuvable sur Internet. J'ai immédiatement pu mettre en pratique et continuer l'apprentissage dès la première formation. Je me suis d'ores et déjà procuré les différents livres d'architecture (et même d'autres sur différents paradigmes)." »
DEHITSHOT
Les avis figurant ci-dessus sont issus des fiches d’évaluation que remplissent les participants à la fin de la formation. Ils sont ensuite publiés automatiquement si les personnes ont explicitement accepté que nous les diffusions.
Formations liées
- FlutterFlow : Développer des applications multiplateformes en glisser-déposer avec FlutterFlowRéf. FLUF3 joursFondamentalProchaine session : 2 nov.2 090 €
- Ionic - Développement d'applications mobiles multiplateformesRéf. TIO43 joursIntermédiaireProchaine session : 14 oct.2 175 €
- Jetpack Compose : Développer des interfaces modernes pour AndroidRéf. JETP2 joursFondamentalProchaine session : 23 nov.1 590 €
- Katalon : automatiser les tests des applications web, mobile ou d'une API avec KatalonRéf. OSKA2 joursIntermédiaireProchaine session : 9 nov.1 590 €