순수성 리뷰

변경 요청은 원본 보존과 새 값 반환으로 검토한다

함수가 인자만 읽고 새 결과를 돌려주면 테스트는 입력 스냅샷과 반환값 비교로 단순해집니다.

리뷰 질문

입력 의존

결과가 인자 외의 전역 값, 시간, 무작위 값에 기대지 않는지 확인합니다.

(input) => output

효과 분리

저장, 네트워크 요청, 화면 출력은 계산 함수 밖의 경계로 옮깁니다.

계산 먼저, 효과 나중

사본 생성

객체와 배열은 spread, map, concat으로 새 참조를 만들어 반환합니다.

{ ...user }

참조 비교

원본과 새 값을 나란히 두면 렌더링 최적화와 회귀 테스트가 쉬워집니다.

원본 유지
입력 스냅샷 순수 계산 새 참조 비교 가능