DDD - 아키텍처 개요

2020-12-10

아키텍처 개요

0. 네 개의 영역

아키텍처를 설계할 때 출현하는전형적인 영역이 표현, 응용, 도메인, 인프라스트럭처 의 네 영역이다.

  • 표현
    • 사용자의 요청을 받아 응용 영역에 전달하고 처리 결과를 다시 사용자에게 보여주는 역할
    • 스프링 MVC 프레임워크가 하는 역할
  • 응용
    • 시스템이 사용자에게 제공해야 할 기능을 구현한다.
    • 기능을 구현하기 위해 도메인 영역의 도메인 모델을 사용한다.
    • 서비스 로직을 직접 수행하기 보다는 도메인 모델에 로직 수행을 위임한다.
  • 도메인
    • 도메인 영역은 도메인 모델을 구현한다. ‘배송지 변경’, ‘결제 완료’ 와 같은 핵심 로직을 도메인 모델에서 구현한다.
  • 인프라스트럭처
    • 구현 기술에 대한 것을 다룬다.
    • RDBMS 연동, 메시징 큐에 메세지 전송, 수신 구현
    • SMTP를 이용한 메일 발송을 구현하거나 REST API를 호출을 처리
    • 논리적인 개념보다 실제 구현을 다룬다