Martin Fowler suggests 도메인 모델과 "데이터 로더"사이의 경계로 서비스 계층을 사용합니다. 그러나 Rockford Lhotka는 비즈니스 개체 자체에 대한 유효성 검사를 제안합니다. 이는 CSLA.NET이하는 것과 정확히 같습니다.유효성 검사 및 서비스 계층 또는 비즈니스 개체에서?
이것을 서비스 계층으로 추상화하면 서비스 계층이 여러 비즈니스 개체에서 활동/작업을 조정할 수 있다는 이점이 있습니다. 그러나 비즈니스 로직 및 유효성 검사를 위해 비즈니스 개체를 직접 사용하는 것보다 서비스 계층을 사용하는 다른 장점과 단점은 무엇입니까?
일부 비즈니스 개체가 조정을 수행 할 수도 있습니다. 예를 들어 주문을 송장으로 변환하는 데 필요한 동작을 작성하지 않을 경우 주문을 확인하고 Valide가 변환 할 OrderConverter를 갖게됩니다. 내가 일반적으로 "서비스"객체로 보는 것은 근본적으로 거의 관련없는 메소드의 투기장입니다. 그들은 모두 가게에 뭔가를하지만 그 외의 것은 관련이 없습니다. Csla에서 이러한 방법은 일반적으로 사용 사례에 대한 완전한 지식을 가진 별도의 클래스로 캡슐화됩니다. 주문 방법에 대한 모든 것을 알고 있습니다 – Andy