4장 도메인 격리

도메인 객체를 도메인과 관련 없는 기술로부터 분리해야 함

20220725_180042.png

도메인과 관련된 로직은 도메인과 상관없는 로직분리되어야 한다.

Layered Architecture 패턴

UI 계층

응용 계층

도메인 계층 - Model-Driven-Development를 도입하고 싶은데, 그러려면 도메인 관련 코드는 분리되어야한다

인프라 계층

Smart UI는 별로다

모델을 기준으로 만들 수 없음

도메인 계층은 모델이 상주하는 곳!!!

5장

20220729_181845.jpg

연관관계

모델 내의 연관관계는 소프트웨어를 표현하는 여러가지 방법이 있다.

ex) 고객 - 영업사원, 두 사원, 실제 사람 관계

복잡한 연관관계는 쉽게 하자

  1. 탐색 방향 추가
  2. 한정자 추가
  3. 불필요한 연관관계 제거

Entity

식별성, 연속성을 가진 객체

필수적인 행동속성들만

VO

속성

immutability가 중요하다

→ 값이기 때문에 공유 / 복사를 해서 사용할 수 있음

VO끼리의 연관관계는 단방향으로 하자

궁금증

Entity - VO관계의 영속화 방법은?

  1. Embeddable
  2. VO 테이블 만들고 연관관계?