예상 가능한 결과를 돌려줍니다
값이 없을 수 있는 탐색은 선택적 반환이나 상태값으로도 충분합니다.
반환값, 오류 코드, 예외는 모두 실패를 알릴 수 있지만 호출자가 어떤 책임을 가져야 하는지에 따라 적합한 방식이 달라집니다.
값이 없을 수 있는 탐색은 선택적 반환이나 상태값으로도 충분합니다.
오류 코드는 단순하지만 호출자가 매번 확인하지 않으면 쉽게 누락됩니다.
실패 감지 지점과 복구 지점이 다르면 예외가 호출 경계를 넘어 실패 정보를 운반합니다.
실패 경계 예외 처리는 오류를 숨기는 장치가 아니라 실패를 처리 가능한 경계까지 전달하는 구조입니다.