다음 값이 이전 값에 의존하면 setter에 함수를 넘겨 최신 상태를 기준으로 계산합니다.
state depth
useState 심화
상태 업데이트가 복잡해질수록 함수형 업데이트, 객체와 배열의 불변성, 지연 초기화를 구분해서 적용해야 합니다.
객체와 배열은 직접 수정하지 않고 복사한 뒤 바뀐 부분만 반영합니다.
초기값 계산이 무거우면 함수를 넘겨 첫 렌더링 때만 실행되도록 합니다.
연속 업데이트에서 이전 상태 기반 계산이 필요한지 확인한다.
spread, map, filter로 새 객체나 배열을 만드는지 본다.
중첩 객체 수정 시 바뀌는 경로를 모두 새 참조로 만든다.
초기 계산이 매 렌더링마다 반복되지 않는지 점검한다.