해결된 질문
작성
·
31
답변 1
1
Profile, Email에서 발생하는 오류는 일반적인 형식 검증을 통과하지 못한 경우에 발생하는 것이고 이에 대한 예외는 자바에서 범용적으로 쓰이는 것이 존재하기 때문에 그걸 선택했습니다.
두 가지 이유가 있는데요.
하나는 프론트엔드에서 충분히 검증하고 걸러져야 하는 경우인데 이게 서버까지 넘어왔다면 일종의 버그입니다. 버그에 대해서 도메인 지식을 담은 커스톰 예외를 굳이 선언하는 것은 의미가 없고, 낭비라고 보기 때문입니다. NPE에 대해서 매번 의미있는 예외를 만들지 않는 것과 같습니다.
아직 서버가 던지는 예외에 대한 표준 가이드를 논의하고 결정하지 않았습니다. 파트 2나 시리즈 후반에 이를 본격적으로 검토하고 표준을 잡아서 가이드에 넣을 때 변경될 수도 있습니다.
반면 이메일 중복 예외는 도메인 로직을 표현한 코드입니다. 도메인 지식을 담고, 도메인에서 정한 제약조건을 나타내야 하고, 이건 프론트엔드에서 사전 검증이 불가능하거나 어렵고, 또 복구 가능한(중복되지 않는 다른 이메일로 재시도) 예외이기 때문에 커스톰 예외로 정의된 것입니다. 이건 자바가 가지고 있는 일반적인 예외 클래스로는 그 의미를 담을 수 없기 때문이기도 합니다.
일단은 이 정도 기준으로 Part 1에서는 예외 사용을 결정했습니다. 앞으로 더 논의해볼 부분이 생기면 그때 다시 예외 정책에 관해 이후 강의에서 다뤄보도록 하겠습니다.