Study/Development

[개발일지] Flutter Bloc 상태관리 #1 상태관리와 Bloc

titann 2023. 4. 4. 16:17

Flutter Bloc

<인프런 개발하는 남자 온라인강의 수강일지>


 

플러터 상태 관리 라이브러리

  • GetX: 많은 사랑, 많은 문제 → 유지 보수 등 유동적 개발 어려움, 버그
  • Provider: 꾸준히 사랑받음
  • riverpod: 요즘 핫함
  • bloc: 진입장벽, 복잡하지만 대규모 프로젝트에 적합

 

블록을 사용하는 이유 5가지

  • 뷰 영역과 비즈니스 영역을 쉽게 구분할 수 있다.
  • 테스트하기 쉽고, 재사용을 가능하게 해준다 *TDD: Make the test pass → Refactor → Write a failing test
  • 이벤트 트래킹을 통합적으로 관리할 수 있다 *GetX는 없음
  • 많은 개발자들이 하나의 코드 베이스로 일을 처리할 수 있다.
  • Github에서 가장 높은 Star 수 (Bloc > GetX > Provider > Riverpod)

 

동기 vs Future vs Stream

동기
순서대로 출력, 앞부분이 출력 완료 되기 전까지 뒷부분이 출력 되지 않는다.

 

Future (비동기)
빠른 순서대로 화면에 출력

  • 비동기적인 작업 수행할 때
  • API 통신을 통해 데이터를 얻을 때

 

Stream
새로운 데이터도 계속해서 출력(데이터 변화)

  • 연속/흐르다: 데이터가 흐르듯이
  • Future가 여러개 있는 듯한 구조
반응형