DDD 개요
정의 Domain-Driven Design(DDD)은 도메인의 프로세스와 규칙을 풍부하게 담은 도메인 모델을 프로그래밍하는 데 개발의 중심을 두는 소프트웨어 개발 접근법이다. 2003년 Eric Evans의 책 Domain-Driven Design: Tackling Complexity in the Heart of Software에서 이름이 유래했다. Evans 본인은 DDD를 세 가지로 요약한다. Core Domain에 집중한다. 도메인 전문가와 소프트웨어 전문가의 창의적 협업으로 모델을 탐구한다. 명시적으로 경계 지어진 컨텍스트 안에서 하나의 보편 언어를 사용한다. Martin Fowler는 Evans의 기여를 “모델링 표기법 논쟁을 넘어서는 어휘를 만든 것"으로 평가한다. 도메인 모델이 중요하다는 주장 자체는 1980~90년대 데이터 모델링과 객체지향 분석에서도 있었지만, Evans는 그 접근을 이야기할 수 있는 용어 체계(Entity, Value Object, Aggregate, Bounded Context 등)를 정리했다. ...