본문 바로가기

Flutter

flutter State Management 상태관리 어떤걸 쓰지? getx provoder bloc....

 

간단하게 플러터의 상태 관리에는

제일 많이 쓰이는게 순서대로

1 GetX

2 Provider

3 Bloc

4 RiverPod

.......... 외에도 훅스, 리덕스 등등 많이 있다.

2 와 4는 레미라는 사람이 제안해서 만들어졌다.

이 글을 적는 저도 1 2 를 제일 많이 쓰고 3은 공부해 봤지만 개발해본적이 없음 ,

개인적으로 4로 바꿔 보려합니다만, 3은 어쩔수 없이 같이 가야 할 것 같습니다.

 

 

이유는, 1 GETX은 build context 를 무시합니다. 문서 도큐먼트도 없고, 자칫 구글에서 지원을 안해준다면 getx를 사용해서 만든 어플이 무용지물이되거나 , 업데이트가 안되서 개발에 사용 못할 수도있다, 그렇지만, 사용자가 제일 많은 1위 상태관리 패키지 입니다. 앞으로 어찌 될지 모르지만 , 플러터 자체가 뷸드 콘텍스로 된 위젯 트리 프로그램으로 규칙은 지켜져야 프로그램이 문제가 안생기니 작은 토이프로젝트 외에는 개인적으로 앞으로 손이 안가게 되겠습니다.

 

2 Provider 는 2위의 가장 많이 사용하는 상태관리 중 하나이나 . 이미 레미가 RiverPod를 출시하면서 새로 출시한 riverpod 써주세요 하고 잇다. 업데이트는 하고 있지만 상태관리중 상속등의 문제에 노출 될 수 있다고 합니다. 제작자가 쓰지 말라는 데는 이유가 있어 보입니다. 제작자와 팔로워들이 문서화하고 코드를 공개하고 riverpod로 오라고 손 짓하고 있습니다.

3 BLoC를 플러터라고 하는 이유는 쉬워진 프레임 워크의 시간을 상태관리에 쓰라는 말인지 , 관리의 끝판왕이다. 이벤트, 상태 , 블럭 . 하다보면 클린 아키텍져 까지

하게 되고 , 회사들이 많이 쓰게 되는 것은 확실하다. 대신 코드 생성 량이 많다.

 

장담하건데 flutter 현직또는 취업희망자는 Bloc 못하면 안될 것 같다. 이미 네이버도 사용중입니다. 내부 스트림 하나하나 다 뜯어 볼수 있고. 그리고 검증된 구글에서도 추천하지만, 문제는 써보면 . .종이더미에서 메써드를 찾는 자신의 상태를 .보게 된다..

 

그래서 현재 앞으로 플로터는 Bloc RiverPod를 쓰게될 것 이고, 앞으로는 어찌 될지 모르지만 , 상황에 따라 기존 상태관리 프로그램외에도 다른 여러 패키지들을 묵어서 사용 하게 될것 같다. 표준화 딱 하나만 꼽으라면 아쉽지만 BLOC 로 보인다.