2011-10-25 3 views
1

에 나는 DDD 프로젝트에 기능을 추가 찾고 있어요하지만 난에 맞게하는 가장 좋은 방법의 확실 해요.공유 기능 DDD

필요한 기능은 태그 및 사용자 그룹 조작된다.

많은 것들이 태그 지정 가능 (사용자, 저널, 문서 등) 될 것이므로 각 AR에서 해당 기능을 다시 만들지 못하는 것처럼 보입니다. 중앙 태그 테이블을 유지하는 Tag Repository를 가지고 있어야하고, 필요한 다른 태그 유형 (즉, userId, journalId 등에 태그 연결) 또는 다 대다 (many-to- 관계 유형을 기록하는 많은 테이블. 그렇다면 도메인 객체를 수정하여 태그에 대한 링크를 보유해야합니까?

그룹 기능은 비슷합니다. 사용자가 사용자 그룹을 만든 다음 비공개 엔티티 (저널, 문서 등)에 그룹을 할당하여 액세스 권한을 부여 할 수있게해야합니다.

이 새 기능을 프로젝트에 추가하는 가장 좋은 방법은 무엇입니까?

답변

1

태그 지정 및 그룹 기능을 위해 별도의 제한된 컨텍스트를 디자인합니다.

2

DRY 원칙은 "모든 지식은 시스템 내에서 단일하고 모호하지 않으며 신뢰할 수있는 표현을 가져야합니다."라고 명시되어 있습니다.

분리하면 DRY 지식에 대한 모호하지 않고 권위있는 표현이 촉진됩니다.