Formation Flutter intermédiaire

Formation Flutter intermédiaire : architecturez et testez vos applications en 2 jours, avec Provider ou Riverpod selon votre projet.

Formation Flutter intermédiaire

Description

Cette formation Flutter intermédiaire vous permettra de faire passer vos applications du prototype qui fonctionne au projet solide, structuré et durable.

Pendant 2 jours, vous apprendrez à :

  • structurer une application Flutter maintenable et évolutive autour du pattern MVVM,
  • garder la maîtrise de l'état de votre application avec Provider ou Riverpod,
  • sécuriser vos évolutions grâce à une stratégie de tests automatisés.

Elle s'inscrit dans la suite de la formation Flutter dont elle approfondit la dernière journée : vous consacrez deux jours entiers à l'architecture applicative et aux tests.

Public

Cette formation s'adresse aux développeur·euse·s Flutter ayant déjà réalisé une première application et souhaitant structurer leur code, fiabiliser leurs évolutions et adopter des pratiques de test. Elle est particulièrement adaptée aux équipes qui passent d'un prototype à une application destinée à durer.

Les objectifs

  • Comprendre les limites des StatefulWidget et les mécanismes de propagation d'état
  • Mettre en œuvre le pattern MVVM et un flux de données unidirectionnel
  • Maîtriser la gestion d'état avec Provider ou Riverpod
  • Séparer les couches Vues / Logique / Données d'une application Flutter
  • Écrire des tests unitaires, de widgets et d'intégration
  • Automatiser l'exécution des tests dans une chaîne d'intégration continue

Pré-requis

  • Avoir suivi la formation Flutter ou avoir développé une première application Flutter
  • Maîtriser les bases de Dart : programmation orientée objet, asynchrone, null safety
  • Ordinateur portable à apporter

Le programme de la formation Flutter intermédiaire

Jour 1 — Architecture et gestion d'état

  • Les limites des StatefulWidget
    • Cycle de vie et setState : ce que ça coûte
    • Remontée d'état, prop drilling et couplage vue / logique
    • InheritedWidget : le mécanisme sous-jacent
  • MVVM et réactivité
    • Vue, ViewModel, modèle : qui fait quoi
    • Notifiers et objets observables
    • Flux de données unidirectionnel
  • Provider ou Riverpod (au choix selon votre projet)
    • Les différents types de providers
    • Portée, cycle de vie et invalidation
    • Composition et dépendances entre providers
    • Optimisation des reconstructions et des performances
  • Architecture applicative
    • Séparation Vues / Logique / Données
    • Repositories et sources de données
    • Injection de dépendances
    • Concevoir pour la testabilité

Mises en pratique :

  • Refactoring d'une application existante avec le pattern MVVM et Provider ou Riverpod
  • Mise en place de l'injection de dépendances et substitution d'une source de données

Jour 2 — Tester une application Flutter

  • Stratégie de test
    • La pyramide des tests appliquée à Flutter
    • Que tester dans chaque couche de l'application
  • Tests unitaires
    • Structure d'un test, matchers et organisation des fichiers
    • Tester un ViewModel et sa logique métier
    • Tester du code asynchrone
  • Doublures de test
    • Mocks, stubs et fakes
    • Surcharger les providers dans un test
  • Tests de widgets
    • WidgetTester, finders et cycles de rendu
    • Simuler les interactions utilisateur
    • Golden tests
  • Tests d'intégration
    • Piloter un scénario complet de bout en bout
    • Exécution sur émulateur et sur device
  • Qualité de code et CI/CD
    • Analyse statique et règles de lint
    • Couverture de code et interprétation des rapports
    • Automatiser les tests dans une pipeline d'intégration continue

Mises en pratique :

  • Rédaction des tests unitaires des ViewModels de l'application
  • Tests de widgets avec des providers surchargés
  • Écriture d'un test d'intégration et exécution des tests en CI

Télécharger le programme

Formateur

Erick GHAUMEZ

Erick GHAUMEZ

Erick est passionné par la conception et le développement logiciel depuis plus de 20 ans. D'abord expert et formateur certifié Adobe Flash et Flex, il a collaboré pendant près de 10 ans avec des chercheurs en didactique de l'Université Lyon 2. Il s'est ensuite spécialisé sur Angular, intervenant en tant que Lead Front pour plusieurs grands comptes.

En 2017 il découvre Flutter et n'a de cesse, depuis, de l'explorer. Initiateur de plusieurs projets open-source, il a également contribué au portage de Sentry pour Dart et Flutter.

Animé depuis toujours par le plaisir de partager ce qui le passionne, il met aujourd'hui son enthousiasme et son expérience au service d'équipes souhaitant adopter Flutter.

FAQ

Nos formations sont éligibles à plusieurs dispositifs de financement, selon votre situation. Human Coders est certifié Qualiopi, ce qui permet la prise en charge par des organismes comme Pôle emploi, votre OPCO ou encore le CPF (Compte Personnel de Formation) pour certaines formations.

Pour en savoir plus, veuillez consulter notre page : Comment financer votre formation ?

Oui, la formation peut être proposée en présentiel ou en distanciel. Pour les inter-entreprises, les modalités (présentiel ou à distance) sont fonction de la session.

Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)

Les formations se déroulent toujours en petit groupe de 3 à 6 stagiaires. Nous souhaitons que les formateurs et formatrices puissent passer un maximum de temps avec chacun·e.

Voici une journée type :

  • 9h : vous êtes accueillis par votre formateur·rice autour d'un petit déjeuner (croissants, pains au chocolat, jus de fruit, thé ou café...)
  • 9h30 : la formation commence
  • 12h30 : pause de midi. Le·a formateur·rice mangera avec vous. C'est l'occasion d'avoir des discussions plus informelles.
  • 14h : reprise de la formation
  • 18h : fin de la journée

8 raisons de participer à une formation Human Coders

  • Satisfaction client élevée : Un taux de statisfaction de 4,6/5 depuis 2012 (sur 1905 sessions réalisées). 99% des participants se disent satisfaits de nos formations
  • Approche pédagogique unique : Des formations en petit groupe, des formateurs passionnés et expérimentés, de véritables workshops... (Plus d'infos sur notre manifeste)
  • Catalogue de formations complet : 268 formations au catalogue, de quoi vous accompagner sur tout vos projets
  • Écosystème dynamique : Nous accompagnons les dev depuis 14 ans avec des initiatives comme Human Coders News, les Human Talks, le podcast ou encore notre serveur Discord
  • Financement facilité : Organisme certifié Qualiopi, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • Références clients prestigieuses : De nombreux clients qui nous font confiance depuis des années
  • Accompagnement sur mesure : Nous vous proposons un accompagnement personnalisé par nos consultants pour vous aider dans vos projets au-delà de la formation
  • Valorisation professionnelle : Remise d'un diplôme, d'une attestation et d'une certification, suivant les formations effectuées, que vous pourrez afficher sur vos CV et réseaux sociaux

* Nombre de personnes ayant répondu au questionnaire de satisfaction sur cette formation depuis 2012