다음과 같은 시나리오에서 정말 고민 중입니다.루트 집계에 너무 많은 일대 다 관계가 포함되어 있는지 확인하는 방법은 무엇입니까?
사용자 집계가 있다고 가정 해 봅시다. 사용자는 1 개 이상의 그룹, 메시지, 친구, 사진 갤러리 등을 만들 수 있습니다. 이제는 그룹, 메시지, 친구, 사진 갤러리가 각자 자신의 집합체 그룹으로 구성되어야합니다. 그룹, 메시지, 친구, 사진 갤러리 등의 사용자 속성을 보유하는 것과는 대조적으로이 섹션 각각에 IList <> 속성을 포함하는 사용자 엔터티를 만드는 것은 비합리적입니다. 어떤 접근 방식이 DDD 원근법? 엔티티 수화에 대해서도 생각하고 있으며 사용자 엔티티에서 모두 검색하는 대신 필요에 따라 그룹, 메시지 등을 얻는 것이 더 합리적이라고 생각됩니다. 이 시나리오를 처리하기 위해 권장되는 방법은 무엇입니까?
사용자 엔터티는 다른 집계에 IList 속성을 포함하지 않지만 다른 집계 (예 : 그룹, 메시지, 친구 등)에는 사용자 엔터티에 대한 속성이 포함됩니까? 나에게 이것은 사용자 프로필에서 메시지, 그룹 등을 만드는 사용자가 보이지 않기 때문에 조직적으로 가장 이해하기 쉬운 것 같습니다. 다른 집계는 각각 사용자 인터페이스의 다른 섹션과 관련됩니다. – user1790300
집계 루트는 다른 엔티티 및 값 객체의 콜렉션을 가질 가능성이 큽니다. 친구와 같은 집계의 경우 친구에게 사용자에 대한 참조가있는 것이 효과적 일 수 있습니다 (강력한 결합은 친구의 의도가 항상 한 사용자의 친구임을 나타냅니다). 그러나 메시지와 같은 객체의 경우 메시지를 사용자에게 너무 강하게 결합합니다. 메시지가 원격 시스템, 게임 또는 도메인의 다른 항목에 속할 수있는 경우 이상적이지 않을 수 있습니다. –