-
flutter bloc 패턴, rxdart..flutter 2021. 7. 3. 23:40
블록패턴은 옵저버 패턴의 일종으로..이벤트를 구독하여 비즈니스로직과 ui를 최대한 분리하는게 원칙이다.
bloc패턴을 구현하는법도 여러가지 방법이있고 라이브러리도 다양하다.
stream관련되어서도 여러 라이브러리가있다.
rxdart같은 경우 stream을 조금 더 확장한 버전이라고 볼수있고..
두개이상의 BehaviorSubject를 관찰하여 여러가지 값이 들어올때 이벤트를 listen 하게끔 할수도있다.
Rx.combineLatest2(firstSubscription, secondSubscription, (first, second) {}).listen((event) async {
print('do action :');
// firstSubscription 과 secondSubscription가 둘다 작동될때 event를 listen한다.
});하지만 flutter에서 권장하는 bloc패턴으로 코드를 짜려면 이벤트클래스 상태 클래스 등 다소 많은 파일을 생성해야되고
간단한 앱을 만들때는 오히려 더 불편할수도있으므로..그냥 provider를 사용하는게 좋다.
개인앱 수준이라면 provider로 전역적인 상태관리가 어느정도 되지만..
프로젝트 현업에서 상용어플을 만들때는 provider와 bloc패턴을 섞어서 쓰는게 좋아보인다.
provider는 전역에서 접근할수있는 데이터가 필요할때 사용하는게 좋고,
위젯의 세부 상태를 관리하려면 결국에는 bloc패턴을 쓰는게 나중을 위해서 좋아보인다.
'flutter' 카테고리의 다른 글
bloc 패턴 - flutter_bloc 패키지 사용 (0) 2021.07.16 bloc패턴 -rxdart를 활용한 약식 (0) 2021.07.03 TabBarView PageView에서 위젯 리빌드 방지 (0) 2021.05.03 null safety (0) 2021.05.02 플러터 라이프 사이클 (0) 2021.04.21