Flutter state management from zero to hero

Ahmed Abu Eldahab
Ahmed Abu EldahabSoftware Developer um Dahabit
Flutter
State Management
from Zero to Hero
Ahmed Abu Eldahab
GDE Flutter & Dart
@dahabdev
Google Developer Expert in Flutter & Dart
Senior Technical Consultant
Kortobaa LLC CTO
/Dahabdev
Tell me about you?
Developers ,
Designers , Mac ,
Linux , Windows ,
Web , Mobile ,
Android , ios ?
@dahabdev
@dahabdev
Level 0
Flutter
State Management
Data (State)
User Interface
@dahabdev
Application
Declarative UI
@dahabdev
Declarative UI
@dahabdev
https://flutter.dev/docs/development/data-and-backend/state-mgmt/declarative
Declarative UI
@dahabdev
User Interface
State Management
@dahabdev
State ?
@dahabdev
State = Data
State Management
State = Data
int age;
Stateful Widget
final title ;
Your app Data related to Domain like , TODO List,Cart Items , etc..
Stream <String> user; String title ;
var title ;
State Management
Declarative UI
@dahabdev
State Management
Declarative UI
@dahabdev
State Management
=
Data Management
Declarative UI
@dahabdev
How to manage the State/Data ?
The Problem?
@dahabdev
- Accessing data easily
- Get notified when the data changed
Everything is a Widget
Data (State)
Data (State)
Flutter Widgets
Data (State)
Flutter Widgets
Data (State)
Flutter Widgets
Data (State)
Dependency
injection
Flutter Widgets
Data (State)
Dependency
injection
Flutter Widgets
Flutter Widgets
Data
Flutter Widgets
Data
InheritedWidget
Data (State )Management
Inherited Widget
Data (State )Management
Data (State )Management
Wrap Materialapp or Home property
Data (State )Management
Data (State )Management
Button
Scaffold
Data (State )Management
Button
Scaffold
Data (State )Management
Data (State )Management
Inherited
Widget
Inherited Widget
Data (State )Management
- Not made to handle data, but to share it.
- To handle data you need to use it with
another widget ( stateful Widget!)
- No dispose method
@dahabdev
Story
Facebook Notifications Counter
@dahabdev
Story
Bill Fisher
@dahabdev
Story
Data (State )Management
Data (State )Management
Data (State )Management
@dahabdev
Story
https://facebook.github.io/flux/
Application architecture and Data Management
Data (State )Management
?
Data (State )Management
Flux
Fluxxor
Fluxy
Redux
Fluxible
Lux
Reflux
Omniscient JSDelorean
Redux
Data (State )Management
Dan Abramov
Data (State )Management
-Single source of truth
- State is read-only
- Changes are made
with pure functions
@dahabdev
Story
@dahabdev
Story
How to Share Code between dart and Angular dart ?
@dahabdev
Story
Business Logic Component
UI
Angular
Dart
Backend
Dart
@dahabdev
Story
Streams
Streams
Streams
Streams
Streams
Streams
?
Data (State )Management
Scoped_model
Provider
Bloc
Mobx
Redux
Flux
Inherited Widget
Stateful WidgetFish_Redux
Data (State )Management
@dahabdev
Level Hero
Flutter
State Management
Data (State )Management
- Accessing data easily
- Get notified when the data changed
- I can manage data & Streams throw it
- I can use Proxy
Scoped Model
Data (State )Management
Scoped Model
Scoped Model
Scoped Model
Scoped Model
Data (State )Management
https://pub.dev/packages/scoped_model
Provider
Data (State )Management
https://pub.dev/packages/provider
Data (State )Management
https://pub.dev/packages/provider
Provider
Provider
Provider
Provider
Provider
Bloc
Data (State )Management
Data (State )Management
https://pub.dev/packages/bloc
Data (State )Management
https://pub.dev/packages/flutter_bloc
Flutter_Bloc
Flutter_Bloc
Data (State )Management
https://pub.dev/packages/flutter_redux
Data (State )Management
https://pub.dev/packages/flutter_redux
Flutter_Redux
Flutter_Redux
States
Flutter_Redux
Actions
Flutter_Redux
Reducers
Flutter_Bloc
Flutter_Bloc
Data (State )Management
https://pub.dev/packages/flutter_mobx
Mobx
Mobx
Mobx
Data (State )Management
Data (State )Management
https://pub.dev/packages/flutter_bloc - https://pub.dev/packages/provider
https://www.youtube.com/c/DahabIT
New to Flutter ?
Thanks
Flutter state management from zero to hero
/Dahabdev
1 von 93

Recomendados

Flutter State Management - Moti Bartov, Tikal von
Flutter State Management - Moti Bartov, TikalFlutter State Management - Moti Bartov, Tikal
Flutter State Management - Moti Bartov, TikalDroidConTLV
110 views26 Folien
Flutter von
FlutterFlutter
FlutterMohit Sharma
689 views18 Folien
Flutter state management from zero to hero von
Flutter state management from zero to heroFlutter state management from zero to hero
Flutter state management from zero to heroAhmed Abu Eldahab
1.4K views100 Folien
Building beautiful apps with Google flutter von
Building beautiful apps with Google flutterBuilding beautiful apps with Google flutter
Building beautiful apps with Google flutterAhmed Abu Eldahab
10.7K views35 Folien
Getting started with flutter von
Getting started with flutterGetting started with flutter
Getting started with flutterrihannakedy
1.4K views49 Folien
What and Why Flutter? What is a Widget in Flutter? von
What and Why Flutter? What is a Widget in Flutter?What and Why Flutter? What is a Widget in Flutter?
What and Why Flutter? What is a Widget in Flutter?MohammadHussain595488
520 views19 Folien

Más contenido relacionado

Was ist angesagt?

Building beautiful apps using google flutter von
Building beautiful apps using google flutterBuilding beautiful apps using google flutter
Building beautiful apps using google flutterAhmed Abu Eldahab
658 views68 Folien
Flutter von
FlutterFlutter
FlutterHimanshu Singh
26.1K views26 Folien
Introduction to flutter von
Introduction to flutter Introduction to flutter
Introduction to flutter Wan Muzaffar Wan Hashim
2.5K views42 Folien
Introduction to Flutter von
Introduction to FlutterIntroduction to Flutter
Introduction to FlutterApoorv Pandey
585 views27 Folien
Flutter von
FlutterFlutter
FlutterShyju Madathil
1.2K views16 Folien
Intro to Flutter SDK von
Intro to Flutter SDKIntro to Flutter SDK
Intro to Flutter SDKdigitaljoni
985 views54 Folien

Was ist angesagt?(20)

Building beautiful apps using google flutter von Ahmed Abu Eldahab
Building beautiful apps using google flutterBuilding beautiful apps using google flutter
Building beautiful apps using google flutter
Ahmed Abu Eldahab658 views
Intro to Flutter SDK von digitaljoni
Intro to Flutter SDKIntro to Flutter SDK
Intro to Flutter SDK
digitaljoni985 views
The magic of flutter von Shady Selim
The magic of flutterThe magic of flutter
The magic of flutter
Shady Selim1.5K views
Introduction to Flutter - truly crossplatform, amazingly fast von Bartosz Kosarzycki
Introduction to Flutter - truly crossplatform, amazingly fastIntroduction to Flutter - truly crossplatform, amazingly fast
Introduction to Flutter - truly crossplatform, amazingly fast
Bartosz Kosarzycki50.8K views
Flutter for web von rihannakedy
Flutter for web Flutter for web
Flutter for web
rihannakedy398 views
Bloc Pattern - Practical Use Cases - Flutter London - 21JAN2019 von Didier Boelens
Bloc Pattern - Practical Use Cases - Flutter London - 21JAN2019Bloc Pattern - Practical Use Cases - Flutter London - 21JAN2019
Bloc Pattern - Practical Use Cases - Flutter London - 21JAN2019
Didier Boelens2.5K views
Full stack web development von Crampete
Full stack web developmentFull stack web development
Full stack web development
Crampete2.6K views

Similar a Flutter state management from zero to hero

Hadoop at the Center: The Next Generation of Hadoop von
Hadoop at the Center: The Next Generation of HadoopHadoop at the Center: The Next Generation of Hadoop
Hadoop at the Center: The Next Generation of HadoopAdam Muise
791 views42 Folien
Google flutter the easy and practical way von
Google flutter the easy and practical wayGoogle flutter the easy and practical way
Google flutter the easy and practical wayAhmed Abu Eldahab
483 views80 Folien
Introduction To Wpf Engines von
Introduction To Wpf   EnginesIntroduction To Wpf   Engines
Introduction To Wpf EnginesTamir Khason
259 views33 Folien
From Mobile to MongoDB: Store your app's data using Realm von
From Mobile to MongoDB: Store your app's data using RealmFrom Mobile to MongoDB: Store your app's data using Realm
From Mobile to MongoDB: Store your app's data using RealmDiego Freniche Brito
47 views26 Folien
Visualizing IoT: Rapid Business Data Discovery for the Internet of Things von
Visualizing IoT: Rapid Business Data Discovery for the Internet of ThingsVisualizing IoT: Rapid Business Data Discovery for the Internet of Things
Visualizing IoT: Rapid Business Data Discovery for the Internet of ThingsJReport
373 views29 Folien
What is hot on the web right now - A W3C perspective von
What is hot on the web right now - A W3C perspectiveWhat is hot on the web right now - A W3C perspective
What is hot on the web right now - A W3C perspectiveArmin Haller
3.7K views56 Folien

Similar a Flutter state management from zero to hero(20)

Hadoop at the Center: The Next Generation of Hadoop von Adam Muise
Hadoop at the Center: The Next Generation of HadoopHadoop at the Center: The Next Generation of Hadoop
Hadoop at the Center: The Next Generation of Hadoop
Adam Muise791 views
Introduction To Wpf Engines von Tamir Khason
Introduction To Wpf   EnginesIntroduction To Wpf   Engines
Introduction To Wpf Engines
Tamir Khason259 views
From Mobile to MongoDB: Store your app's data using Realm von Diego Freniche Brito
From Mobile to MongoDB: Store your app's data using RealmFrom Mobile to MongoDB: Store your app's data using Realm
From Mobile to MongoDB: Store your app's data using Realm
Visualizing IoT: Rapid Business Data Discovery for the Internet of Things von JReport
Visualizing IoT: Rapid Business Data Discovery for the Internet of ThingsVisualizing IoT: Rapid Business Data Discovery for the Internet of Things
Visualizing IoT: Rapid Business Data Discovery for the Internet of Things
JReport 373 views
What is hot on the web right now - A W3C perspective von Armin Haller
What is hot on the web right now - A W3C perspectiveWhat is hot on the web right now - A W3C perspective
What is hot on the web right now - A W3C perspective
Armin Haller3.7K views
MobileCaddy Architectural Overview von MobileCaddy
MobileCaddy Architectural OverviewMobileCaddy Architectural Overview
MobileCaddy Architectural Overview
MobileCaddy222 views
Spark Summit EU talk by Pat Patterson von Spark Summit
Spark Summit EU talk by Pat PattersonSpark Summit EU talk by Pat Patterson
Spark Summit EU talk by Pat Patterson
Spark Summit1.3K views
Hadoop 2.0 - Solving the Data Quality Challenge von Inside Analysis
Hadoop 2.0 - Solving the Data Quality ChallengeHadoop 2.0 - Solving the Data Quality Challenge
Hadoop 2.0 - Solving the Data Quality Challenge
Inside Analysis2.1K views
Modern Data Architecture von Ed Thewlis
Modern Data ArchitectureModern Data Architecture
Modern Data Architecture
Ed Thewlis1.3K views
It's the markup that matters - Hidde de Vries - Codeland von HiddedeVries6
It's the markup that matters - Hidde de Vries - CodelandIt's the markup that matters - Hidde de Vries - Codeland
It's the markup that matters - Hidde de Vries - Codeland
HiddedeVries6271 views
Next Generation Hadoop Introduction von Adam Muise
Next Generation Hadoop IntroductionNext Generation Hadoop Introduction
Next Generation Hadoop Introduction
Adam Muise979 views
Builiding Modular monoliths that can scale to microservices. JBCNConf 2021 von David Gómez García
Builiding Modular monoliths that can scale to microservices. JBCNConf 2021Builiding Modular monoliths that can scale to microservices. JBCNConf 2021
Builiding Modular monoliths that can scale to microservices. JBCNConf 2021
Moving from Web 1.0 to Web 2.0 von Estelle Weyl
Moving from Web 1.0 to Web 2.0Moving from Web 1.0 to Web 2.0
Moving from Web 1.0 to Web 2.0
Estelle Weyl1.7K views

Más de Ahmed Abu Eldahab

The Flutter Job Market At The Moment von
The Flutter Job Market At The MomentThe Flutter Job Market At The Moment
The Flutter Job Market At The MomentAhmed Abu Eldahab
64 views44 Folien
Flutter A year of creativity! von
Flutter A year of creativity!Flutter A year of creativity!
Flutter A year of creativity!Ahmed Abu Eldahab
197 views50 Folien
Flutter latest updates and features 2022 von
Flutter latest updates and features 2022Flutter latest updates and features 2022
Flutter latest updates and features 2022Ahmed Abu Eldahab
266 views39 Folien
Flutter 2.8 features and updates von
Flutter 2.8 features and updatesFlutter 2.8 features and updates
Flutter 2.8 features and updatesAhmed Abu Eldahab
424 views39 Folien
6 x1 flutter_talk von
6 x1 flutter_talk6 x1 flutter_talk
6 x1 flutter_talkAhmed Abu Eldahab
769 views59 Folien
Null safety in dart and flutter , the whole story! von
Null safety in dart and flutter , the whole story!Null safety in dart and flutter , the whole story!
Null safety in dart and flutter , the whole story!Ahmed Abu Eldahab
1.1K views50 Folien

Más de Ahmed Abu Eldahab(20)

Null safety in dart and flutter , the whole story! von Ahmed Abu Eldahab
Null safety in dart and flutter , the whole story!Null safety in dart and flutter , the whole story!
Null safety in dart and flutter , the whole story!
Ahmed Abu Eldahab1.1K views
What's new in flutter and dart in 2020 von Ahmed Abu Eldahab
 What's new in flutter and dart in 2020   What's new in flutter and dart in 2020
What's new in flutter and dart in 2020
Ahmed Abu Eldahab686 views
Build responsive applications with google flutter von Ahmed Abu Eldahab
Build responsive applications with  google flutterBuild responsive applications with  google flutter
Build responsive applications with google flutter
Ahmed Abu Eldahab1.1K views
Build web applications using google flutter part 2 von Ahmed Abu Eldahab
Build web applications using google flutter part 2Build web applications using google flutter part 2
Build web applications using google flutter part 2
Ahmed Abu Eldahab795 views
Build web applications using google flutter von Ahmed Abu Eldahab
Build web applications using google flutterBuild web applications using google flutter
Build web applications using google flutter
Ahmed Abu Eldahab2.1K views
Google flutter the easy and practical way IEEE Alazhar von Ahmed Abu Eldahab
Google flutter the easy and practical way IEEE AlazharGoogle flutter the easy and practical way IEEE Alazhar
Google flutter the easy and practical way IEEE Alazhar
Building your actions for Google Assistant von Ahmed Abu Eldahab
Building your actions for Google AssistantBuilding your actions for Google Assistant
Building your actions for Google Assistant
Ahmed Abu Eldahab330 views
Building Successful Apps with Google Firebase von Ahmed Abu Eldahab
Building Successful Apps with Google FirebaseBuilding Successful Apps with Google Firebase
Building Successful Apps with Google Firebase
Ahmed Abu Eldahab366 views
Flutter beyond hello world GCDC Egypt Devfest 2019 von Ahmed Abu Eldahab
Flutter beyond hello world GCDC Egypt  Devfest 2019Flutter beyond hello world GCDC Egypt  Devfest 2019
Flutter beyond hello world GCDC Egypt Devfest 2019
Ahmed Abu Eldahab288 views

Último

FOSSLight Community Day 2023-11-30 von
FOSSLight Community Day 2023-11-30FOSSLight Community Day 2023-11-30
FOSSLight Community Day 2023-11-30Shane Coughlan
8 views18 Folien
Dapr Unleashed: Accelerating Microservice Development von
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice DevelopmentMiroslav Janeski
16 views29 Folien
JioEngage_Presentation.pptx von
JioEngage_Presentation.pptxJioEngage_Presentation.pptx
JioEngage_Presentation.pptxadmin125455
9 views4 Folien
Transport Management System - Shipment & Container Tracking von
Transport Management System - Shipment & Container TrackingTransport Management System - Shipment & Container Tracking
Transport Management System - Shipment & Container TrackingFreightoscope
6 views3 Folien
Bootstrapping vs Venture Capital.pptx von
Bootstrapping vs Venture Capital.pptxBootstrapping vs Venture Capital.pptx
Bootstrapping vs Venture Capital.pptxZeljko Svedic
16 views17 Folien
What is API von
What is APIWhat is API
What is APIartembondar5
15 views15 Folien

Último(20)

Dapr Unleashed: Accelerating Microservice Development von Miroslav Janeski
Dapr Unleashed: Accelerating Microservice DevelopmentDapr Unleashed: Accelerating Microservice Development
Dapr Unleashed: Accelerating Microservice Development
Miroslav Janeski16 views
JioEngage_Presentation.pptx von admin125455
JioEngage_Presentation.pptxJioEngage_Presentation.pptx
JioEngage_Presentation.pptx
admin1254559 views
Transport Management System - Shipment & Container Tracking von Freightoscope
Transport Management System - Shipment & Container TrackingTransport Management System - Shipment & Container Tracking
Transport Management System - Shipment & Container Tracking
Freightoscope 6 views
Bootstrapping vs Venture Capital.pptx von Zeljko Svedic
Bootstrapping vs Venture Capital.pptxBootstrapping vs Venture Capital.pptx
Bootstrapping vs Venture Capital.pptx
Zeljko Svedic16 views
Top-5-production-devconMunich-2023-v2.pptx von Tier1 app
Top-5-production-devconMunich-2023-v2.pptxTop-5-production-devconMunich-2023-v2.pptx
Top-5-production-devconMunich-2023-v2.pptx
Tier1 app9 views
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P... von NimaTorabi2
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...
Unlocking the Power of AI in Product Management - A Comprehensive Guide for P...
NimaTorabi217 views
Supercharging your Python Development Environment with VS Code and Dev Contai... von Dawn Wages
Supercharging your Python Development Environment with VS Code and Dev Contai...Supercharging your Python Development Environment with VS Code and Dev Contai...
Supercharging your Python Development Environment with VS Code and Dev Contai...
Dawn Wages5 views
Automated Testing of Microsoft Power BI Reports von RTTS
Automated Testing of Microsoft Power BI ReportsAutomated Testing of Microsoft Power BI Reports
Automated Testing of Microsoft Power BI Reports
RTTS11 views
How to build dyanmic dashboards and ensure they always work von Wiiisdom
How to build dyanmic dashboards and ensure they always workHow to build dyanmic dashboards and ensure they always work
How to build dyanmic dashboards and ensure they always work
Wiiisdom16 views
Ports-and-Adapters Architecture for Embedded HMI von Burkhard Stubert
Ports-and-Adapters Architecture for Embedded HMIPorts-and-Adapters Architecture for Embedded HMI
Ports-and-Adapters Architecture for Embedded HMI
Burkhard Stubert35 views
Advanced API Mocking Techniques Using Wiremock von Dimpy Adhikary
Advanced API Mocking Techniques Using WiremockAdvanced API Mocking Techniques Using Wiremock
Advanced API Mocking Techniques Using Wiremock
Dimpy Adhikary5 views

Flutter state management from zero to hero