Study/도메인 주도 개발 시작하기

chapter 02. 아키텍처 개요(4) 모듈 구성

hongeeii 2024. 2. 13.
728x90
반응형

요청 처리 흐름

image

모듈 구성

아키텍처의 각 영역은 별도 패키지에 위치한다.
image

도메인이 크면 다음과 같이 하위 도메인으로 나누고 각 하위 도메인마다 별도 패키지를 구성한다.
image

도메인 모듈은 도메인이 속한 애그리거트를 기준으로 다시 패키지를 구성한다.
예를 들어 카탈로그 하위 도메인이 상품 애그리거트와 카테고리 애그리거트로 구성될 경우 다음과 같이 도메인을 두 개의 하위 패키지로 구성할 수 있다.
image

애그리거트, 모델, 리포지터리는 같은 패키지에 위치한다.
주문과 관련된 Order, OrderLine, Orderer, OrderRepository등은
com.myshop.order.domain 패키지에 위치한다.

도메인이 복잡하면 도메인 모델과 도메인 서비스를 다음과 같이 별도 패키지에 위치할수도 있다.

  • com.myshop.order.domain.order: 애그리거트 위치
  • com.myshop.order.domain.service: 도메인 서비스 위치

응용 서비스도 다음과 같이 도메인 별로 패키지를 구분할 수 있다.

  • com.myshop.catalog.application.product
  • com.myshop.catalog.application.category
728x90
반응형

추천 글