티스토리 뷰

IT

도메인 주도 개발 시작하기 by 최범균

비즈붓다 2022. 12. 11. 15:36
728x90

[ 밑줄/연결 ]

 

도메인 모델에는 다양한 정의가 존재하는데, 기본적으로 도메인 모델은 특정 도메인을 개념적으로 표현한 것이다.

 

도메인을 이해하려면 도메인이 제공하는 기능과 도메인의 주요 데이터 구성을 파악해야 하는데, 이런 면에서 기능과 데이터를 함께 보여주는 객체 모델은 도메인을 모델링하기에 적합하다.

도출한 모델은 크게 엔티티(Entity)와 밸류(Value)로 구분할 수 있다. 

엔티티와 밸류를 제대로 구분해야 도메인을 올바르게 설계하고 구현할 수 있기 때문에 이 둘의 차이를 명확하게 이해하는 것은 도메인을 구현하는데 있어 중요하다.

도메인 모델의 엔티티는 DB 테이블의 엔티티와는 다르다.

도메인 모델의 엔티티는 단순히 데이터를 담고 있는 데이터 구조라기보다는 데이터와 함께 기능을 제공하는 객체이다. 

도메인 관점에서 기능을 구현하고 기능 구현을 캡슐화해서 데이터가 임의로 변경되는 것을 막는다.

 

도메인 모델에서 전체 구조를 이해하는 데 도움이 되는 것이 애그리거트(Aggregate)이다.

인프라스트럭처(Infrastructure)는 표현영역, 응용영역, 도메인 영역을 지원한다. 

도메인 객체의 영속성 처리, 트랜잭션, SMTP 클라이언트, REST 클라이언트 등 다른 영역에서 필요로 하는 프레임워크, 구현 기술, 보조 기능을 지원한다.

 

애그리게이트를 사용함으로써 모델 간의 관계를 개별 모델 수준과 상위 수준에서 모두 이해할 수 있다.

[ 자평 ]

 

필요한 부분만 휘리릭 훑어 보았다. 

댓글