현재 게시 제한 컨텍스트에서 작업 중입니다. 이 컨텍스트의 주 플레이어는 제품 및 목록입니다.DDD : 중첩 된 집합과 다 대다 관계
제품 : 여러 마켓에 등록 할 수 있습니다. 하나 제품 많은 목록.
목록 : 일부 시장에서는 변형 목록을 지원하기 때문에 많은 제품을 보유 할 수 있습니다. 하나 목록 많은 제품.
위의 내용을 바탕으로 과 제품 사이에 다 대다 관계가 있습니다.
둘 모두에 대해 집계를 만들었습니다. 목록을 포함하는 제품 집합과 제품을 포함하는 목록 집합.
목록을 두 집계에 모두 정의했거나 두 집계에 한 번 사용하도록 Listing을 정의해야합니까? 제품 AR이 리스팅을 만드는 규칙을 적용하는 팩토리 메소드가 (예 : 같은 시장에서 피할 중복 된 목록 등을 우리가 목록에 대한 재고의 수량이 있는지 확인) 때문에
먼저 목록은
제품 집계 내 것 둘째 목록은 게시 시점에 많은 제품의 정보가 포함될 수있는 집계 루트가됩니다. 이 방법으로 다른 시장 (예 : Ebay 및 Amazon)에서 제공하는 스키마 정의에 매핑하는 방법을 만들 수 있습니다. 또한 동일한 제품 내의 목록에서 독립적으로 목록을 유지할 수 있기를 원합니다.
두 집계가 중복 정의와 너무 겹치지 않습니까? 이것은 하나의 제한된 맥락 안에서 기대 되는가?
또한 어떻게하면 목록의 복제 표현을 서로 동기화 상태로 유지할 수 있습니까?
당신이에 대한 더 많은 정보를 공유 할 수 있을까요? 1. 첫 번째 목록의 책임은 제품이 게시 될 예정인 마켓을 기록하는 객체입니까? 2. "다른 방법으로 제공되는 스키마 정의에 매핑하기 위해 Listing에 메소드를 생성 할 수있는 방법"은 두 번째 Listing을 의미합니까? 제품을 Amazon의 제품 스키마로 변환 하시겠습니까? – Hippoom
"일반 목록"과 구별되는 "변주 목록"을 모델링 할 수 있습니까? 그들은 별개의 것들일지도 모르는 것처럼 들리니? 집합체 또는 집합체가 무엇인지에 관해서는 트랜잭션 일관성 경계를 찾으십시오. 이것은 무엇을 결정하는 데 도움이되는 시작점 일 수 있습니다. – stephenl
제품 집합 내의 첫 번째 목록 정의는 게시 된 시장 (가격, 제목, 수량)을 기록하는 개체입니다. 두 번째 리스팅 정의는 경우에 상관없이 Amazon Product Schema 및 Ebay 스키마에 자신을 매핑하는 방법을 알고있는 고유 한 AR입니다. – berkeleyjuan