외부 문자열은 value object로 변환된 뒤 조회된다

형식이 잘못된 문자열과 형식은 맞지만 존재하지 않는 resource를 서로 다른 단계와 상태 코드로 유지한다.

01 · PATH

외부 문자열

예: P-1042를 URL에서 읽는다.

02 · CONVERT

prefix·숫자 parse

문법과 범위를 검사한다.

03 · VALUE

PostId

양수라는 domain 불변식을 가진다.

04 · LOOKUP

Repository

검증된 ID로 존재 여부를 조회한다.

어느 단계에서 실패했는가?
CONVERT

400

client 문자열 형식을 수정해야 한다.

LOOKUP

404

올바른 ID지만 현재 resource가 없다.

핵심: 400은 표현을 고치라는 뜻이고 404는 표현 뒤의 resource가 없다는 뜻이다.