입력만 결과를 설명하는가
날짜, 난수, 전역 설정처럼 숨은 의존성이 있으면 결과가 흔들립니다.
✓인자를 보면 결과를 예측 가능
✓외부 변수 읽기 최소화
함수가 안전한지 볼 때는 반환값뿐 아니라 외부 상태, 인자 변경, 타입으로 막을 수 있는 실수까지 함께 확인합니다.
날짜, 난수, 전역 설정처럼 숨은 의존성이 있으면 결과가 흔들립니다.
로그, 네트워크, 저장소 쓰기는 계산 함수 밖에서 다루면 테스트가 쉬워집니다.
객체와 배열은 직접 수정하지 않고 스프레드, map, filter로 새 참조를 만듭니다.
readonly, ReadonlyArray, as const는 변경 금지 의도를 코드에 남깁니다.
순수 함수와 불변성은 함께 적용될 때 캐싱, 병렬 처리, 상태 변경 추적을 단순하게 만듭니다.