FECONF 2022 [B5] 상태관리 이 전쟁을 끝내러 왔다
우리가 고민하는 상태관리 문제는 사실 아키텍처 문제
임을 이해할 필요가 있다.
(오.....!!)
UI와 비즈니스 로직을 어떻게 분리하고 관리할 것인가?
(솔직히 난 아직도 이 부분이 좀 어렵다...)
- Plain object 사용이 강제 / 상태처리는 순수함수로 작성할 것
→ class에 대한 욕구를 불러일으킨다 ( ∵ 우리는 객체지향의 방식에 익숙하므로)
고차함수 적극 사용 + 익숙한 객체지향 동시에 사용하자!
- 거대한 단일 스토어
대안은 Micro Store
앞으로 마이크로 스토어를 적극적으로 활용하는 방안으로 발전할 것이라고 예상!!! ✨
그래서 Micro Store는 어떻게 만들까?
UI는 자주 바뀌고 재사용성 낮음, 잦은 변경으로 테스트가 어렵다
External Store는 핵심 로직이고, 외부 의존이 적다, 변경이 적어서 테스트가 쉽다
useSyncExternalStore
을 이용해서 강의에서 구현