
provider와 같은 state management solution 없이 state를 관리하고자 했을 때의 상황에 대해 알아봄
Provider의 Dependency Injection 기능을 이용한 데이터 액세스
ChangeNotifier의 addListener를 이용한 데이터 변화 listening 하기
ChangeNotifierProvider를 이용한 dependency injection 및 데이터와 UI 동기화
BuildContext extension method들인 read, watch, select를 활용한 손쉬운 활용
MultiProvider syntax sugar
FutureProvider 활용 예제
StreamProvider 활용 예제
Consumer convenience widget 사용 방법
Consumer와 BuildContext, ProviderNotFoundException 예 및 피하는 방법
Consumer with fine grained control
ProviderNotFoundException에 대해 더 알아보기
Anonymous route를 사용할 경우의 provider access issue 및 해결 방법
Named route를 사용할 경우의 provider access issue 및 해결 방법
Generated route를 사용할 경우의 provider access issue 및 해결 방법
ProxyProvider의 다양한 사용 예
Provider를 사용할 때 마주치게 되는 에러 및 addPostFrameCallback method 활용법
Provider를 사용할 때 마주치게 되는 에러 및 addPostFrameCallback method 활용법
Provider를 사용할 때 마주치게 되는 에러 및 addPostFrameCallback method 활용법
Provider를 사용할 때 마주치게 되는 에러 및 addPostFrameCallback method 활용법
ChangeNotifier class의 addListener method의 유용한 활용법
ChangeNotifier class의 addListener method의 유용한 활용법
ChangeNotifier class의 addListener method의 유용한 활용법
ChangeNotifier class의 addListener method의 유용한 활용법
TODO App에서 사용할 package들, folder 구조 및 앱의 뼈대
ChangeNotifierProxyProvider를 ProxyProvider로 refactoring 할 수 있는 조건이 되는지 체크
StateNotifier와 StateNotifierProvider 소개 및 만들어볼 예제 소개
StateNotifier + StateNotifierProvider example
TODO App을 StateNotifier와 StateNotifierProvider를 이용해 refactor 하기
StreamProvider, ChangeNotifierProvider, ChangeNotifierProxyProvider의 조합
StreamProvider, StateNotifierProvider의 조합으로 refactor 하기
Weather app에서 사용할 package들, app folder 구조 및 앱의 뼈대
Weather app을 ChangeNotifierProvider와 ProxyProvider의 조합으로 refactoring 하기
StateNotifier와 StateNotifierProvider의 조합으로 Weather app refactor 하기
Flutter Provider Essential 코스에서는 Flutter state management solution 중 가장 기본적이면서도 널리 쓰이고 있는 Provider에 대해 깊이 있게 배울 수 있습니다.
만약 Flutter Provider에 대해 깊이 이해하기를 원하고, 모든 개념을 실전처럼 연습해보고자 하신다면 이 강의야 말로 여러분을 위한 바로 그 강의입니다.
강의를 만들 때 이론과 실전 간의 균형이 이루어질 수 있도록 주의 했습니다.
그리고, 반복 이야말로 가장 중요한 학습 방법이라는 믿음 하에, 새로운 개념이 나올 때마다 작은 앱을 만들어서 그 개념을 테스트를 하고, TODO, Weather, Firebase Authentication app 등의 실전 앱을 통해서는 개념이 종합적으로 어우러지도록 했습니다.
특히 TODO, Weather, Firebase Authentication App을 만들 때 다양한 Provider의 조합을 반복적으로 연습합니다.
- TODO App (3번 구현): 1. ChangeNotifierProvider, ChangeNotifierProxyProvider의 조합, 2. ChangeNotifierProvider와 ProxyProvider의 조합, 3. StateNotifierProvider
- Weather App (3번 구현): 1. ChangeNotifierProvider, ChangeNotifierProxyProvider의 조합, 2. ChangeNotifierProvider와 ProxyProvider의 조합, 3. StateNotifierProvider
- Firebase Authentication App (2번 구현): 1. StreamProvider , ChangeNotifierProvider, ChangeNotifierProxyProvider의 조합, 2. StreamProvider, StateNotifierProvider의 조합
또한, Provider를 보다 진일보한 State Management Solution으로 활용할 수 있게 해주는 StateNotifier와 StateNotifierProvider에 대해서도 설명 드리고 앱을 통해서 연습할 수 있게 했기 때문에 여러분들은 보다 더 다양한 옵션을 가질 수 있습니다.
저는 이번 코스가 Flutter Provider에 대해 가장 깊이 있게 다루는 코스라고 자부합니다.
이번 코스에서 다루는 모든 내용들을 간단히 살펴보겠습니다.
- Provider와 같은 것이 필요한 이유
- Provider를 사용해 widget tree 상에서 데이터를 액세스 할 수 있는 방법
- ChangeNotifier의 addListener를 이용해 widget tree에서 데이터 변화를 listen 하는 방법
- Provider에서 가장 많이 활용되고 있는 ChangeNotifierProvider 활용법
- 데이터를 쉽게 액세스 하고 listen 할 수 있게 해주는 read, watch, select extension method 들의 활용법
- 여러 개의 provider 들을 widget tree 상에 쉽고 깔끔하게 inject 할 수 있게 해주는 MultiProvider
- FutureProvider와 연속적으로 변화하는 값을 listen 하고 widget을 rebuild 하고 싶을 때 사용하는 provider인 StreamProvider
- 특정 type의 Provider에 대한 액세스를 쉽게 할 수 있게 해주는 일종의 convenience widget인 Consumer widget
- 일종의 Consumer widget인데 보다 섬세한 컨트롤을 가능하게 해주는 Selector widget
- Provider Access 및 value named constructor: anonymous route access, named route access, generated route access, global access
- Provider-to-provider communication: ProxyProvider
- Provider를 사용할 때 마주치게 되는 다양한 에러와 그 대처법
- Provider와 함께 유용하게 사용될 수 있는 addPostFrameCallback method
- showDialog나 Navigator dot push와 같은 action을 ChangeNotifier의 addListener를 활용해 처리하는 방법
- TODO App: 다양한 Provider의 조합을 통한 3번의 구현
- Weather App: 다양한 Provider의 조합을 통한 3번의 구현
- Firebase Authentication App: 다양한 Provider의 조합을 통한 2번의 구현