Flutter/Package

[Flutter] Bloc ① - 소개

찌김이 2022. 8. 3. 15:44
728x90
반응형

Bloc ① - 소개 

Bloc ② - Cubit 과 Bloc https://dalgoodori.tistory.com/29

Bloc ③ - Bloc Widgets https://dalgoodori.tistory.com/30

Bloc ④ - context.read, context.watch, context.select https://dalgoodori.tistory.com/31

Bloc ⑤ - Bloc Test https://dalgoodori.tistory.com/32

 

 Flutter에서는 UI 와 비즈니스 로직을 분리하기 위해서 많이 쓰이는 Bloc 에 대해서 포스팅 합니다.

 Provider 와 같이 관심사 분리를 위해 쓰이는 것은 동일하지만 Bloc 은 Provider 와 다르게 State와 Event를 분리하여 관리하고 있어 보다 견고한 느낌을 줍니다.

 하지만 견고한 만큼의 학습시간이 적지 않게 필요하며, Cubit 이 있긴 하지만 Bloc 은 Provider 와 다르게 한개의 로직을 짜는데 여러 클래스를 생성하고 보일러플레이트가 많습니다. 그렇기 때문인지 구글에서는 중규모 프로젝트에서는 Provider 를, 대규모 프로젝트에서는 Bloc 을 권장합니다.

 

Bloc의 장단점을 간단하게 정리하자면 

  • 장점
    1. 유지보수성 향상
    2. TDD 용이 
  • 단점
    1. 복잡한 구조
    2. 학습시간 길게 필요

 Bloc 은 공식문서가 굉장히 잘 구성되어 있어서 조금의 시간을 들인다면 익숙하게 사용할 수 있다고 생각합니다.

 

 

Bloc State Management Library

Official documentation for the bloc state management library. Support for Dart, Flutter, and AngularDart. Includes examples and tutorials.

bloclibrary.dev

 

 

 

flutter_bloc | Flutter Package

Flutter Widgets that make it easy to implement the BLoC (Business Logic Component) design pattern. Built to be used with the bloc state management package.

pub.dev

 

728x90
반응형

'Flutter > Package' 카테고리의 다른 글

[Flutter] Bloc ③ - Bloc Widgets  (0) 2022.08.04
[Flutter] Bloc ② - Cubit 과 Bloc  (0) 2022.08.04
[Flutter] Provider  (0) 2022.07.27
[Flutter] Hive  (0) 2022.07.26
[Flutter] Drift  (0) 2022.07.25