의견 1. Not-Always-Valid Domain Model

The fallacy of the always-valid entity

엔티티를 항상 유효하게 유지하려는 시도는 무의미합니다. 나쁜 일이 발생하도록 내버려둔 다음 유효성을 검사하세요.

엔티티의 속성에 대한 유효성 검사에 대한 비즈니스 규칙은 엔티티 클래스 외부에 있어야 합니다.

근거

의견 2. Alway-Valid Domain Model

Always-Valid Domain Model

불변성은 도메인 클래스 자체를 정의하는 규칙이기 때문에 도메인 클래스는 항상 불변성을 만족해야 한다. 대신 애플리케이션 수준에서 사용자 입력 유효성을 검사하여 사용자 출력 메시지를 애플리케이션에서 정할 수 있고, 도메인 계층에서의 불변성 위반을 막을 수 있다.

요약