2011-12-18 1 views
1

나는 DDD의 첫 번째 주에 속하며 골재 뿌리가 정의 된 두 개의 실체가있다.집계 루트 뒤의 엔티티에 어떻게 액세스합니까?

집계 외부의 외부 엔터티가 집계의 엔터티를 참조 할 수 없으므로 외부 엔터티가 집계 루트를 참조해야한다는 것을 알았습니다.

글쎄, 내가 내 솔루션을 잘못 모델링하지 않았다면, 집계 루트 뒤 엔티티에 대한 참조가 필요하다. 이 상황을 어떻게 처리합니까, 아니면이 상황을 피하기 위해 도메인을 개조해야합니까?

JD

+1

일부 코드를 보는 것이 이에 응답하는 데 도움이됩니다. –

답변

3

아마도 모델을 수정할 수 있습니다. 집계 내의 엔티티에 대한 외부 참조가 필요한 경우 이는 내부 엔티티가 집계 루트 자체 일 수 있다는 강력한 표시입니다.

물론이 모델은 내가 모르는 사이에 일반적인 조언입니다.

집계 디자인에 대한 유용한 정보는 paper by Vaughn Vernon을 참조하십시오. Part I, "Aggregate의 모델링"에서 그는 특히 깨달음을 얻은 전체적인 세분성을 다룹니다.

+0

답장을 보내 주셔서 감사합니다. 내가 발견 한 것은 집안을 집계 루트로 생각하기 시작한 다음 집계 루트를 참조하는 집계 루트가 많다는 것을 알았습니다. 집계 루트는 저장소에 액세스 할 가능성이 높기 때문에 좋다고 생각합니다. 이 말이 맞습니까? –

+0

첫 번째 단락에 완전히 동의하지 않습니다. "집계 ID + 로컬 (집계) 엔터티 ID"는 외부로 전달되고 다른 집계를 추적 할 수 있음을 발견했습니다. 일반적인 권장 사항은 아니지만 유용 할 수 있습니다. –

+0

@ 예브, 귀하의 추천에 감사드립니다. 깊은 그래프가 있고 로컬 엔티티가 여러 객체에 깊이 들어가면 어떨까요? 그래서 나는 무엇을 추적 할 것인가? (모든 entry objects id)? –