DDD (Domain Driven Design)
- 어느 이해당사자가 존재한다.
- 이해당사자가 요구하는 어떤 문제를 해결해야 한다.
- 따라서 문제가 되는 공간을 해결공간으로 만들어야 한다.
아주 큰 도메인을 서브 도메인으로 분리하는데 이를 DDD 전략패턴이라고 칭한다.
Domain Model
- 특정 도메인을 개념적으로 표현
- 모델의 각 구성요소는 특정 도메인을 한정할 때, 비로소 의미가 완전. 따라서 각 하위 도메인마다 별도의 모델을 만들어 준다.
유비쿼터스 언어
- 업무전문가와 모델링을 수행하는 사람 (개발자, 분석가, 아키텍트 설계자 등) 은 같은 언어를 사용함을 지향한다.
- 서로가 공통된 언어를 사용하고 그 언어를 통해서 소통하여야 한다.
- 용어가 정의될 때마다 아래와 같은 일을 수행한다.
- 용어사전에 이를 기록하여 명확하게 정의함으로써 다른 사람들도 공통된 언어를 사용할 수 있도록 한다.
- 이는 중간에 새로운 개발자가 들어올 시에 쉽게 찾아보고 프로젝트의 규모가 커질수록 빛을 발할 것이다.
참고자료.
'프로그래밍 언어' 카테고리의 다른 글
20200927 [design-pattern] 옵저버 패턴 (observer pattern) (0) | 2020.09.27 |
---|---|
20190427 스트래티지 패턴 (Strategy Pattern) (0) | 2019.04.27 |
20180208 싱글톤, Singleton (수정 20190619) (0) | 2018.02.08 |
20180129 Loose Coupling & High Cohesion 2 (0) | 2018.01.29 |
20180128 Loose Coupling & High Cohesion (0) | 2018.01.28 |