0%
StatelessWidget, StatefulWidget et cycle de vie — Chapitre 45

Chapitre 45 — StatelessWidget, StatefulWidget et cycle de vie

Partie 1B — Créer des applications Flutter · Chapitre 45 sur 62 · 7 h

Chapitre 45 — StatelessWidget, StatefulWidget et cycle de vie

Niveau : débutant / intermédiaire Durée estimée : 7 h Pré-requis : chapitre 44 — Les widgets et l'arbre de widgets Ce que vous saurez faire à la fin : décider si un widget doit être StatelessWidget ou StatefulWidget, stocker un état dans une classe State, le modifier proprement avec setState(), initialiser et libérer des ressources aux bons moments du cycle de vie, et remonter un état vers un parent commun.


45.0 — Objectifs du chapitre

À la fin de ce chapitre, vous serez capable de :

  • expliquer ce qu'est l'« état » d'une interface ;
  • distinguer ce qui change dans une interface de ce qui ne change pas ;
  • définir précisément un StatelessWidget ;
  • écrire un StatelessWidget de zéro ;
  • expliquer le rôle exact de la méthode build() ;
  • expliquer pourquoi toutes les propriétés d'un widget sans état sont final ;
  • passer des données à un widget par son constructeur ;
  • expliquer pourquoi un StatefulWidget est fait de deux classes ;
  • écrire une classe State<T> ;
  • placer les variables d'état au bon endroit ;
  • utiliser setState() correctement ;
  • décrire ce que setState() fait réellement dans le framework ;
  • écrire le compteur, exemple canonique de Flutter ;
  • reconnaître le bug silencieux de l'état modifié hors de setState() ;
  • mesurer le coût d'un setState() inutile ;
  • accéder aux propriétés du widget depuis l'état avec widget.propriete ;
  • lire et dessiner le cycle de vie complet d'un State ;
  • utiliser createState(), initState(), didChangeDependencies(), build(), didUpdateWidget(), deactivate() et dispose() ;
  • libérer un contrôleur dans dispose() ;
  • utiliser mounted pour éviter un setState() après démontage ;
  • choisir entre état local et état remonté ;
  • pratiquer la remontée d'état (lifting state up) ;
  • faire redescendre une action par un callback ;
  • énoncer les limites de cette approche et savoir ce que le chapitre 52 apportera ;
  • appliquer un arbre de décision « stateless ou stateful ? ».

Commentaires

Les commentaires sont alimentés par GitHub Discussions

Connectez-vous avec GitHub pour participer à la discussion

Lien copié !