변경 원인
state, props, context, 부모 렌더 중 어떤 변화가 현재 컴포넌트 렌더를 시작했는지 구분합니다.
리렌더링은 값이 바뀐 사실보다 그 변화가 어느 컴포넌트 범위까지 퍼지는지가 핵심입니다.
state, props, context, 부모 렌더 중 어떤 변화가 현재 컴포넌트 렌더를 시작했는지 구분합니다.
부모 렌더가 자식 전체로 퍼지는지, 특정 하위 트리만 다시 계산되는지 Profiler로 봅니다.
memo를 붙이기 전에 렌더 비용과 props 안정성이 실제 병목인지 먼저 측정합니다.
상태는 필요한 가장 가까운 공통 부모에 두어 변경 범위가 불필요하게 커지지 않게 합니다.
부모가 렌더되면 기본적으로 자식도 렌더 후보가 되므로 트리 구조를 함께 확인합니다.
props가 자주 바뀌거나 비교 비용이 더 크면 memo가 성능 이득을 만들지 못할 수 있습니다.