2017-10-26 4 views
0

제한된 컨텍스트를 만들 도메인이 있다고 생각하십시오. 그러나이 도메인에는 아무 것도 보관되어서는 안됩니다. 순수한 작업 기반 논리가 있어야하며 가상 도메인 모델은 업데이트되지 않습니다.명시 적 도메인 모델이없는 컨텍스트에 DDD를 적용하는 방법

도메인에서 엔티티 패턴을 적용 할 수있는 방법이 없다는 것을 알고 싶습니다.이 경우 서비스와 값 객체 만 있습니다. 지금 다음 문 중 하나에 해당하는 궁금 해서요 :이 DDD는

  • 문제에 적용해서는 안 하위 도메인의 종류가

    것은
    1. 전략적 디자인 및 하위 도메인 안 함께 이 DDD에 관해서는 별도의 경계 상황
    2. 그냥 서비스를 제공하는 도메인 모델을 만들 확실히하고 값으로 추출 할 것은 내 경험에서
  • +2

    가상 질문입니까 아니면 실생활 문제가 있습니까? – guillaume31

    +0

    좋은 질문이지만 답변은 여기에서 논의하는 비즈니스 컨텍스트에 달려 있다고 생각합니다. @ guillaume31에 동의합니다. 비즈니스 문제를 확대 할 수 있습니까? –

    답변

    0

    객체,이 오해가있다.

    a) "I do DDD"및 "I do not do DDD"가 없습니다. 우린 언제나 그 중간에있어. 흑인과 백인은 없어. 민첩한 개발과 같습니다. 당신은 그것의 일부를 할 수 있고 그것으로부터 이익을 얻습니다. DDD는 비즈니스 (또는 기술) 도메인을위한 도메인 모델을 구축하는 방법입니다.

    b) DDD 엔티티는 @Entity 주석과 아무 관련이 없습니다. DDD 엔티티는 식별 할 수있는 무언가입니다 (여전히 @Id Annotation과 함께하지 마십시오!). 그리고 모든 속성에 의해 식별 될 수는 없지만 예를 들어 저장소에 존재 함으로 인해 식별 될 수 있습니다.

    문제점 공간이 무엇인지 알 수 없습니다. 하지만 GUI를 만들고 있다고 가정 해 봅시다. GUI는 지속되지 않습니다. 하지만 여전히 엔티티를 닮은 요소가 있습니다 (예 : 창과 같은 루트). UI 구성 요소는 해당 도메인의 엔티티가됩니다. 집계가 보장하는 불변량을 구현할 것입니다. UI 구성 요소에 대한 참조를 반환하도록 요청할 수있는 리포지토리가있을 것입니다.

    지속 상태가 없기 때문에 DDD 패턴을 적용 할 수 없다는 것을 의미하지는 않습니다.