증상 측정
Profiler로 느린 commit과 자주 렌더되는 컴포넌트를 분리한다.
리렌더링 자체는 React의 정상 동작이고, 문제는 값이 바뀌지 않았는데 참조가 매번 새로 만들어지거나 넓은 상태 변경이 많은 컴포넌트를 깨울 때 생긴다.
Profiler로 느린 commit과 자주 렌더되는 컴포넌트를 분리한다.
props와 context value가 실제로 바뀌었는지 참조 단위로 확인한다.
한 영역만 쓰는 상태는 해당 영역 가까이 내려 영향 범위를 줄인다.
비용이 확인된 컴포넌트에만 memo, useMemo, useCallback을 사용한다.
{user, setUser} 객체를 매번 새로 만들면 소비자가
다시 렌더