2025/06/18 2

[도메인 주도 개발 시작하기: DDD 핵심 개념 정리부터 구현까지] 3. 애그리거트

최범균 님의 "도메인 주도 개발 시작하기: DDD 핵심 개념 정리부터 구현까지" 책을 정리한 포스팅 입니다. 0. 설계 관점구분개별 객체 수준상위 수준(모델 관점)관심 범위단일 클래스, 엔티티, 메서드 등여러 객체들의 관계와 구조 전체적용 시점세부 로직 구현 단계시스템 설계 초기 또는 리팩터링 단계장점✅ 구현 세부사항에 집중✅ 객체 내부 로직 이해에 유리✅ 도메인 전반의 흐름 파악✅ 책임, 경계, 협력 구조 설계에 유리단점❌ 객체 간 관계를 놓치기 쉬움❌ 구조 왜곡 위험❌ 직관적이지 않을 수 있음 (추상적 흐름부터 정의하므로)변경에 대한 민감도⚠️ 구조 고려 없이 변경하면 다른 객체에 영향 확산 됨✅ 경계 기반 변경 가능모델링 초점객체 내부 (필드, 메서드, 생성자 등)객체 간 관계, 애그리거트 경계, ..

Code 2025.06.18

[도메인 주도 개발 시작하기: DDD 핵심 개념 정리부터 구현까지] 2. 아키텍처 개요

최범균 님의 "도메인 주도 개발 시작하기: DDD 핵심 개념 정리부터 구현까지" 책을 정리한 포스팅 입니다. 1. 네 개의 영역표현 영역, 애플리케이션 영역, 도메인 영역, 인프라스트럭처 영역 2. 계층 구조 아키텍처단방향 의존성상위가 하위 의존 (하위는 상위 의존 안함)➡️ 도메인, 비즈니스 영역이 인프라스트럭처에 의존함 문제점❌ 테스트 어려움❌ 기능 확장 어려움 3. DIP (Dependency Inversion Principle)저수준 모듈이 고수준 모듈에 의존하도록 바꿈컴파일 시점에 해당 고수준 모듈 타입(인터페이스)에 의존함 DIP와 아키텍처애플리케이션 영역과 도메인 영역에 영향을 최소화하면서 구현체를 변경하거나 추가할 수 있음항목도메인 서비스애플리케이션 서비스책임여러 도메인에 걸친 순수한 도메..

Code 2025.06.18