Today I Learned

Yejung·2022년 11월 23일
0

FECONF 2022 [B5] 상태관리 이 전쟁을 끝내러 왔다

우리가 고민하는 상태관리 문제는 사실 아키텍처 문제임을 이해할 필요가 있다.
(오.....!!)

관심사의 분리

UI와 비즈니스 로직을 어떻게 분리하고 관리할 것인가?
(솔직히 난 아직도 이 부분이 좀 어렵다...)

Redux의 단점

  1. Plain object 사용이 강제 / 상태처리는 순수함수로 작성할 것

→ class에 대한 욕구를 불러일으킨다 ( ∵ 우리는 객체지향의 방식에 익숙하므로)

고차함수 적극 사용 + 익숙한 객체지향 동시에 사용하자!

  1. 거대한 단일 스토어
  • 복잡성 증가
  • 개발 관심사 관리 어려워진다

대안은 Micro Store

  • recoil
  • zustand

앞으로 마이크로 스토어를 적극적으로 활용하는 방안으로 발전할 것이라고 예상!!! ✨



그래서 Micro Store는 어떻게 만들까?

UI는 자주 바뀌고 재사용성 낮음, 잦은 변경으로 테스트가 어렵다
External Store는 핵심 로직이고, 외부 의존이 적다, 변경이 적어서 테스트가 쉽다

useSyncExternalStore 을 이용해서 강의에서 구현

profile
이것저것... 차곡차곡...

0개의 댓글