Formation Flutter & Dart
1980€ HT / personne |
3 jours (21 heures) |
Présentation
Cette formation « Flutter, développer des applications mobiles multiplateformes » vous permettra en trois jours d’acquérir toutes les compétences essentielles pour développer des applications mobiles multiplateformes modernes. À travers des ateliers pratiques, vous apprendrez à maîtriser Flutter, construire une interface responsive, structurer une application robuste et coder efficacement avec Dart.
Dès le premier jour, vous installerez et configurerez un environnement de développement performant, adapté à Flutter, tout en comprenant les spécificités de la POO du langage Dart, particulièrement sa gestion avancée de l’asynchronisme.
Vous apprendrez ensuite à concevoir des interfaces utilisateurs élégantes et entièrement responsives en exploitant efficacement les widgets Flutter, MediaQuery et LayoutBuilder, et en adoptant les meilleures pratiques d’architecture logicielle (MVC, MVVM).
Le deuxième jour vous permettra d’aller plus loin en maîtrisant la gestion d’état avancée avec Riverpod, la navigation simplifiée via GoRouter, ainsi que les animations pour améliorer l’expérience utilisateur.
Enfin, le troisième jour vous permettra d’intégrer votre application avec Firebase pour l’authentification, les données temps réel et de communiquer efficacement avec des API externes, assurant ainsi une expérience applicative complète et fluide.
La formation utilisera les dernières versions stables en date du projet (Flutter 3.32 et Dart 3.9 à ce jour).
Objectifs
- 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
Public visé
- Développeur
- Lead Developer
Pré-requis
- Connaissance dans un langage de programmation orienté objet (Java, C#…)
- Tester Mes Connaissances
PRÉ-REQUIS LOGICIELS
- Les dernières mises à jour de l’OS (Mac ou Windows)
- Flutter SDK mis à jour Android Studio avec le SDK Android installé (pour les tests sur simulateur Android)
- Visual Studio Code
- Flutter Live Preview Plugin pour Visual Studio Code
RECOMMANDATIONS DE LECTURES AVANT LA FORMATION
- Nous vous recommandons le site personnel de Dane Mackier qui fournit une tonne de code snippets clé en main ainsi que des tutoriels vidéos complètement qui démontrent qu’il n’y a pas de limites avec Flutter !
- Le blog de Christian Findlay développeur australien qui met à disposition des articles techniques sur Dart, les composants Flutter, les Tests, l’immutabilité et l’IoC, la programmation asynchrone (async/await)
- L’accessibilité (Flutter team en parle dans son blog)
- L’injection de dépendance et autres trucs et astuces de Flutter dans le blog de Reso Coder
Programme de notre formation Flutter & Dart
Jour 1 : Découvrir Flutter et Dart
Flutter dans l’écosystème mobile
- Natif vs multiplateforme
- Alternatives à Flutter (React Native, Xamarin, MAUI, Ionic, Kotlin Multiplatform, PWA)
- Pourquoi choisir Flutter (performance, communauté, open-source)
- Cas d’usage célèbres (L’app Google Ads, Philips Hue, My BMW App, Alibaba (Xianyu), Nubank)
- Atelier participatif : Quiz comparatif des frameworks
Le langage Dart essentiel pour Flutter
- Variables, types, conditions, boucles, Loop For-in
- Fonctions, lambdas, closures
- Null Safety
- Types optionnels
- La programmation orientée objet (classes, génériques; mixins, isolates, méthodes d’extensions)
- Asynchronisme : Futures, async/await, Streams
- Nouveautés Dart 3 (pattern matching, records)
- Programmation asynchrone (async / await / Future, Stream, yield)
- Gestion des exceptions
- Atelier pratique : Manipulation de données en Dart via console.
Concevoir une interface responsive moderne sur mobile
- Structure d’application Flutter (MaterialApp, Scaffold)
- Gestion des dépendances (pubspec.yaml)
- Widgets essentiels : Text, Container, Row, Column
- Widgets Stateless/Stateful
- Layout responsive avec Expanded, Flexible, MediaQuery, LayoutBuilder
- Prototypage rapide avec FlutterFlow
- Atelier pratique : Développement d’une interface responsive de l’application fil rouge.
Création d’une belle interface utilisateur avec Flutter
- Utilisation du fichier Pubspec.yaml pour incorporer des dépendances, des ressources personnalisées et des polices de caractère
- Introduction à la méthode build() des widgets et utilisation de widgets de disposition tels que Columns, Rows, Containers et Cards
- Utilisation de MediaQuery pour créer une interface utilisateur réactive en fonction de la taille de l’écran
- Exécution de l’application Flutter avec le widget MaterialApp et la méthode runApp()
- Compréhension de la philosophie de Flutter de l’interface utilisateur en tant que code et refactoring de widgets
Jour 2 : Architectures et pratiques avancées
Structurer son application efficacement
- Organisation du projet (MVC, MVVM, Clean Architecture)
- Séparation des responsabilités (UI, logique métier, données)
- État local vs global
- Bonne pratique de modularité et réutilisabilité
- Atelier pratique : Mise en place d’une architecture claire du projet fil rouge.
Gestion d’état avancée avec Riverpod
- Limites de setState et Provider
- Principes de Riverpod (Provider, StateNotifier)
- Riverpod et asynchronisme (FutureProvider, StreamProvider)
- Atelier pratique : Implémenter un état global (mode sombre/clair) dans l’application
Navigation simplifiée avec GoRouter
- Navigation impérative vs déclarative
- Introduction à GoRouter (déclaration des routes, passage de paramètres)
- Navigation imbriquée et deep-linking
- Atelier : Mise en place de la navigation entre écrans de l’application fil rouge
Animations pour améliorer l’expérience utilisateur
- Animations implicites (AnimatedContainer, AnimatedOpacity)
- Animations explicites (AnimationController, Tween)
- Transitions entre écrans avec Hero
- Micro-interactions et UX
- Atelier pratique : Ajouter une animation de transition dans l’application fil rouge.
Jour 3 : Multiplateforme et applications connectées
Design adaptatif et Material 3
- UI adaptative pour mobile, tablette et desktop
- Layout responsive : breakpoints, MediaQuery
- Composants adaptatifs (NavigationRail, BottomNavigationBar)
- Nouveautés Material 3 (thèmes dynamiques)
- Atelier pratique : Adapter l’interface fil rouge à différents formats (mobile/tablette).
Connexion API REST & manipulation JSON
- Concepts API REST (GET, POST)
- Traitement JSON avec Dart (sérialisation/désérialisation)
- Requêtes HTTP avec package http
- Gestion des erreurs réseau
- Atelier pratique : Connexion de l’application à une API externe (TheMealDB)
Backend avec Firebase (BaaS)
- Introduction à Firebase
- Configuration Firebase dans Flutter
- Authentification avec Firebase Auth
- Gestion de données temps réel avec Cloud Firestore
- Notifications avec Firebase Cloud Messaging
- Sécurité et règles d’accès
- Atelier pratique : Ajouter authentification et stockage de favoris utilisateurs dans l’application fil rouge avec Firebase.
Module complémentaire (+1 jour) : Tests et Intégration Continue
Tests automatisés
- Vue d’ensemble des tests de Flutter
- Écriture de tests unitaires et de tests de widgets
- Utilisation de tests d’intégration pour les tests de bout en bout
Génération de code avec Freezed
- Vue d’ensemble de la génération de code avec Freezed
- Génération de modèles et de classes d’états immuables
- Amélioration de la qualité du code et réduction du code en double
CI/CD avec CodeMagic ou Github Actions
- Vue d’ensemble des pipelines et des workflows CI/CD
- Configuration de CI/CD pour les applications Flutter avec CodeMagic ou Github Actions
- Automatisation des processus de construction, de test et de déploiement
FAQ – QUESTIONS / RÉPONSES
Quels sont les objectifs de la formation ?
L’objectif est maîtriser le développement d’applications multiplateformes performantes avec Flutter & Dart , tout en exploitant les widgets natifs et les animations fluides.
Quels cas pratiques sont inclut dans la formation ?
Vous apprendrez à developper une application complète : navigation, gestion de l’état, animations, intégrations d’API et déploiement sur iOS et Android.
Quelles sont les forces de Dart par rapport à d'autres langages ?
Dart est rapide, simple à apprendre, et spécialement conçu pour les interfaces réactives, ce qui en fait un langage idéal pour Flutter.
Flutter est-il renseigné pour d'autres plateformes que le mobile ?
Vous verrez comment utiliser Flutter pour créer des applications web et dekstop en plus des apps mobiles.
Quels sont les principaux avantages d'utiliser Dart dans un projet ?
La formation détaille les bénéfices de Dart, comme sa rapidité, sa gestion des exceptions, et son typage fort, qui contribue à la stabilité des projets.
Flutter est-il adapté aux projets complexes ?
Oui, grâce à sa performance native, sa gestion efficace de l’UI et des outils comme Provider et Bloc pour la gestion, Flutter peut supporter des projets de grande envergure.
Pour aller plus loin
Formation Flutter Avancé
Formation React Native
Formation Ionic
Langues et Lieux disponibles
Langues
- Français
- Anglais / English
Lieux
-
France entière
- Paris
- Lille
- Reims
- Lyon
- Toulouse
- Bordeaux
- Montpellier
- Nice
- Sophia Antipolis
- Marseille
- Aix-en-Provence
- Nantes
- Rennes
- Strasbourg
- Grenoble
- Dijon
- Tours
- Saint-Étienne
- Toulon
- Angers
-
Belgique
- Bruxelles
- Liège
-
Suisse
- Genève
- Zurich
- Lausanne
-
Luxembourg
Nos Formateurs Référents
Boris-Wilfried
Informaticien passionné par les nouvelles technologies. Architecte Cloud et fondateur du 1er site français grand public écrit en Dart : Pick & School. Capitaine de l’équipe Rushio-Consulting (groupe d’expert des technologies Dart & Flutter), je donne des conférences en tant qu’advocate sur ces technologies. Organisateur du Meetup Flutter Toulouse, j’ai eu la belle occasion d’introduire Dart & Flutter en 2017 au DevFest de Toulouse . Aujourd’hui je me passionne à partager ces technologies via la formation technique.
Témoignages
Les + : Formateur compétent, accessible et pédagogue.
Les points essentiels sont abordés.
Les – : Très technique pour un débutant Dart/Flutter.
Court, vu le contenu.
Parfois des latences sur le partage d’écran du formateur rendant le suivi difficile.
Afficher tous les témoignages
Les + : Formateur compétent, accessible et pédagogue.
Les points essentiels sont abordés.
Les – : Très technique pour un débutant Dart/Flutter.
Court, vu le contenu.
Parfois des latences sur le partage d’écran du formateur rendant le suivi difficile.
Je recommande la formation
Les + : Formateur très compétent et passionné par le sujet (ça se sent). De plus, celui-ci est à l’écoute, demande régulièrement s’il y a des questions (ou selon le contexte des remarques) ou si le rythme convient et si des points devraient en priorité être abordés pour correspondre à nos attentes. Cas pratique très intéressant et concret, permettant de manière pertinente d’illustrer les concepts vus dans la théorie ou sur un exemple différent.
Les – : Selon moi, 1 ou 2 jours de plus (4 ou 5 jours en tout au moins) seraient nécessaires pour davantage prendre le temps de tout aborder sans devoir se presser sur la fin et mieux pouvoir assimiler les informations et nouveaux concepts abordés (parfois assez complexes).
En synthèse : Merci Edouard pour cette formation ! Merci pour votre expertise et votre passion pour le sujet. Vous écouter à été pour moi un plaisir !
Les + : Le rythme entre la partie théorique et la pratique où justement on progresse en faisant des choses de plus en plus complexe sans véritablement s’en rendre compte.
Les – : C’est pas vraiment lié à la formation mais plutôt aux installations nécessaires sur notre ordinateur pour pouvoir coder sur le langage.
En amélioration peut être avoir des VMs qu’on puisse utiliser depuis nos postes pour jouer avec flutter sans avoir tout à installer manuellement ?
Je recommande la formation
Je recommande la formation
Les + : Le formateur était tres compétent et pédagogue.
Excellente formation de sa part.
Les + : Beaucoup de pratique
Le formateur s’adapte à nos compétences et demandes
Les – : Au final j’aurais bien fait un jour de plus pour approfondir des points.
Je recommande la formation
Je recommande la formation
Les + : La patience et la passion d’Edouard, mais aussi sa transparence et la connaissance des limitations du stack Flutter.
Les – : Pas de points faibles en particulier, juste quelques suggestions pour faciliter les futures formations:
– un repo commun pour le partager le code
– réserver plus de temps pour les différentes architectures
Je recommande la formation
Navigation Site Reviews
Noter la formation
1980€ HT / personne |
3 jours (21 heures) |
UNE QUESTION ? UN PROJET ? UN AUDIT DE CODE / D'INFRASTRUCTURE ?
Pour vos besoins d’expertise que vous ne trouvez nulle part ailleurs, n’hésitez pas à nous contacter.
ILS SE SONT FORMÉS CHEZ NOUS