본문 바로가기

책이야기

[리뷰]도메인 주도 개발 시작하기: DDD 핵심 개념 정리부터 구현까지

반응형

 

 

[도서 소개]

 

가장 쉽게 배우는 도메인 주도 설계 입문서!

이 책은 도메인 주도 설계(DDD)를 처음 배우는 개발자를 위한 책이다. 실제 업무에 DDD를 적용할 수 있도록 기본적인 DDD의 핵심 개념을 익히고 구현을 통해 학습할 수 있도록 구성했다. 이 책으로 도메인 모델을 이용하여 애플리케이션을 구현하면서 DDD에 대한 이해를 넓힐 수 있을 것이다.

 

[대상 독자]

- DDD를 처음 접하는 개발자

- DDD에 대해 잘은 모르지만 관심이 있는 독자

 

[주요 내용]

- 도메인 모델의 이해, 엔티티와 밸류의 개념

- 아키텍처의 주요 영역 구성요소와 DIP 패턴

- 애그리거트, 리포지터리 등 DDD 주요 패턴의 이해와 구현 방법

- 응용 서비스와 표현 영역을 연동하는 방법

- 도메인 서비스의 필요성과 구현 방법

- 도메인 모델의 트랜잭션 충돌을 처리하는 방법

- 도메인 이벤트를 이용하여 시스템의 결합도를 낮추고 기능을 확장하는 방법

- CQRS의 개념과 명령 모델/조회 모델을 나누는 방법

 

[서평]

 

이 책은 도메인 모델을 이용하여 애플리케이션을 구현하는 데 필요한 내용을 다루고 있으며 전체 11장으로 구성되어 있다. 처음 1장과 2장에서는 도메인 모델을 구현할 때 필요한 기본 개념을 다루고 있다. 1장에서 도메인 모델이 무엇인지, 엔티티와 벨류에 대해서 알아본다. 2장은 상위 수준에서 아키텍처의 영역과 DIP 패턴을 설명하고 도메인 영역의 구성 요소에 대해서 배운다.

 

3~5장은 애그리거트와 리포지터리를 설명한다. 애그리거트는 복잡한 도메인 모델을 관리 가능한 단위로 묶어주는 역할을 담당한다. 3장에서는 애그리거트가 무엇이고 구현을 어떻게 하는지 배운다. 4장에서는 애그리거트의 노리적인 저장소인 리포지터리를 구현하는 방법을 알아보고 5장에서는 검색 조건을 위한 스펙, 정렬, 페이징 등 조회 기능을 구현해 본다.

 

6장은 응용서비스와 표현 영역에 대해 설명한다. 응용 서비스가 어떻게 도메인 모델을 사용하고 어떤 역할을 수행하는지 알아보고 표현 영역과 응용 서비스의 연동에 대해 설명한다.

 

7장은 도메인 영역의 구성요소 중 하나인 도메인 서비스가 필요한 이유와 구현에 대해 설명한다.

 

8장에서는 애그리거트의 트랜잭션 범위에 대해 살펴본다. 애그리거트의 트랜잭션 처리를 위해 DBMS를 이용한 선점 잠금과 비전을 이용한 비선점 잠금을 구현하는 방법을 소개한다.

 

9장은 애그리거트와 더블어 가장 주용한 개념 중 하나인 바운디드 컨텍스트에 대한 내용을 다룬다. 바운디드 컨텍스트가 무엇이고 각 컨텍스트의 통합과 관계에 대해 배워본다.

 

10장과 11장은 각각 이벤트와 CQRS에 대해 설명한다. 10장은 도메인 이벤트를 이용해서 시스템의 결합도를 낮추고 기능을 확장하는 방법을 설명하며 비동기로 이벤트를 처리하는 몇 가지 구현 방법도 살펴본다. 11장은 CQRS가 무엇인지 알아보고, 이를 통해 어떤 효과를 얻을 수 있는지에 대해 설명한다.




 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

반응형