ddd 샘플 응용 프로그램을 보면 Cargo
Cargo.java 개체에 RouteSpecification
에 대한 별도의 참조가 필요한 이유를 알 수 없습니다. 여행 일정이화물 노선을 만족하거나 수없는 경우화물에서 RouteSpecification을 분리하는 목적은 무엇입니까
유효성을 검사하는 데 사용되는화물 클래스의 origin, destination and arrivalDeadline
부분을 가지고 모두이 RouteSpecification 클래스를 건너 뛰고 같은 updateDestination
및 satisfiedByItinerary
RouteSpecification 등의 방법을 노출하는 것이 더 간단하지 않을까요 그러나 그러한 작업이 카고 클래스 자체로 처리 될 수없는 이유는 없습니다.이 분리의 요점은 무엇입니까?
public class Cargo implements Entity<Cargo> {
...
private Location origin;
private Location destination;
private Date arrivalDeadline;
...
하나의 "단어": 단일 책임 원칙 –
유비쿼터스 언어에 충실하는 것입니다. 하나의 책임을 지닌 매우 일관된 의미있는 도매를 창출하는 것입니다. 이것은 암시적인 것을 명시 적으로 만드는 것입니다. OO가 올바르게 끝낸 것입니다. – plalx