단일 에러 모델 DomainError와 중앙 에러 처리기 handleError로 아키텍처 완성하기
의도한 에러 vs 의도하지 않은 에러, 그리고 5개의 방어선 '경계'에 책임을 부여하는 전략