Vous êtes sur la page 1sur 9

FLUTTER

BLOC
FLUTTER BLOC

QU’EST-CE QUE LE BLOC PATTERN?

▸ Créé par Google et présenté en janvier 2018.

▸ Signifie Business Logic Components. Ou


Composants de logique de Travail en français.

▸ A pour but de séparer les composants de


présentation (UI) des composants de logique.

▸ Le BLoC se soucie des entrées et sorties de


données.

▸ Le UI gère seulement l’interface en fonction des


flux de données.
FLUTTER BLOC

GESTION DES FLUX DE DONNÉES


▸ La logique du BLOC s’appuie sur la
gestion de flux de données via les
Streams

▸ Le Stream est généralement


représenté comme un tuyau avec 1
entrée et 1 sortie.

▸ Il est contrôlé via un


StreamController qui gère les
événements d’entrée et de sortie
de ce tuyau.
FLUTTER BLOC

J’UTILISAIS LES STREAMS


AVANT TOUT LE MONDE

Mario
FLUTTER BLOC

STREAM EN DÉTAIL
‣ Le Stream est géré par un StreamController.

‣ L’entrée s’utilise avec le Sink.

‣ La sortie s’utilise avec le Stream.

‣ Tout peut transiter dans un Stream (pas que Mario).

‣ Les données peuvent être transformées avec un StreamTransformer.

‣ Pour écouter un Stream, on s’enregistre au flux via StreamSubscription.

‣ Avec Flutter nous pouvons utiliser un Widget StreamBuilder qui gère


l’enregistrement au flux et à la réception d ‘événements de ce flux.
FLUTTER BLOC

AVANTAGES DU BLOC

▸ Séparation totale de l’interface et de la logique. La ou des


architectures de type MVC ou MVVM pouvaient avoir des
Interfaces qui utilisaient la logique de travail, ici tout est
séparé.

▸ Disparition du setState();. Nous utiliserons désormais des


StatelessWidgets. La mise à jour de l’interface se fera grâce
à la réception d’événements du BLoC via le StreamBuilder.
Le nombre de build sera considérablement réduit.

▸ Réusabilité du code.
FLUTTER BLOC

CONTRAINTES DU BLOC (INCONVENIENTS)

▸ Si l’application est très simple, cela nécessite plus de


lignes de code.

▸ Nécessite un peu de pratique avant de bien maîtriser les


blocs.
FLUTTER BLOC

CONCLUSION
Créé par Google est pour Dart, le BLoC pattern a été pensé
pour s’intégrer parfaitement à vos applications Flutter.

Il nous permet de séparer les responsabilités pour obtenir un


code clair, réutilisable et testable facilement.

Maintenant que nous avons vu tout cela en théorie, passons


à la pratique.

Vous aimerez peut-être aussi