[ ddd start! ] 7. 도메인 서비스
CHAPTER 7. 도메인 서비스
1. 여러 애그리거트가 필요한 기능
- 한 애그리거트에 넣기에 애매한 도메인 기능을 특정 애그리거트에서 억지로 구현하면 안된다.
- 이 경우 애그리거트는 자신의 책임 범위를 넘어서는 기능을 구현하기 때문에 코드가 길어지고 외부에 대한 의존성이 높아지게 된다.
- 이를 해결하기 위해서 도메인 서비스를 별도로 구현하면 된다.
2. 도메인 서비스
- 응용 영역의 서비스가 응용 로직을 다룬다면 도메인 서비스는 도메인 로직을 다룬다.
- 트랜잭션 처리와 같은 로직은 응용 로직이므로 도메인 서비스가 아닌 응용 서비스에서 처리해야 한다.