많은 사람들이 redux를 소개할 때 복잡한 상태관리를 쉽게 처리할 수 있는 ~~ 이런식으로 소개합니다.
근데 솔직히 쓰면서 이런 생각을 해보신 적이 있지 않으신가요?
이게 진짜 쉬운건가?
redux 식으로 상태를 관리하려면 값 하나를 바꾸는데도 10줄가량의 코드를 작성해야 할 수도 있습니다.
저는 지금까지 짜다가 망한 redux코드를 꽤 많이 봤습니다.
구체적으로 망했다
하는 것은 아래와 같은 경우들이 있습니다.
이러한 문제들을 겪어보신적이 있거나, 이렇게 작성된 코드를 본 적이 있으실 겁니다.
위 문제들이 나오는 이유는 아래와 같다고 생각합니다.
redux
는 해당 개념을 최소한으로 구현한 구현체에 불과합니다. 사실 프로덕트에서 쓰려면 thunk
, redux-saga
, redux-toolkit
같은 추가 구현체가 필요합니다.사실 4번이 가장 중요합니다. redux는 신입 개발자가 셋업해서 잘 쓸수있는 물건은 절대 아닙니다. (저조차도 아직 redux를 받아드리기엔 준비가 안됐다고 생각하여 redux는 전혀 사용하지 않고 있습니다.)
만약 redux를 쓰면서 이게 진짜 좋은건가?
라는 생가이 들거나, 혹은 각종 어려움을 겪고 계시다면 공부가 부족해서라고 생각하지 마시고 되도록 빨리 redux를 탈출하세요.
redux 이외의 다른 상태관리 라이브러리를 먼저 접하거나, 나중에 현업에서 단단하게 작성된 redux 코드를 보면서 참고해서 나중에 다시 도전해도 아무런 문제가 없습니다.
전역 상태관리는 결국 필요한대, 그 중 리덕스를 쓰는 것 SSR 지원 , 많은 표본, 데브툴이 대체불가...
개념을 이해하고 toolkit이 생긴 후 부터는 사용하는데 불편함이 크게 줄어서 저는 계속 리덕스 사용합니다.
리코일에 ssr과 데브툴 나오면 바로 교체하고싶네요 ㅋㅋ