스프링/MVC

[MVC 기초] 패키지 구조 설계 domain vs web package

nomoreFt 2022. 5. 29. 16:08

domain vs web 패키지


  • domain

시스템이 구현해야하는 핵심 비즈니스 업무 영역 (화면, UI, 기술 인프라 등등을 제외한)
따라서 시스템의 기술을 변경하더라도 변하지 않아야 한다. 독립적으로 생성되어 있어야 함.

  • web

web -> domain 방식으로 웹은 도메인을 알지만, 도메인은 웹을 모르게 설계해야 한다.
(극단적으로 web 패키지를 모두 삭제해도 domain에 오류가 없게)
단방향 의존관계

ex) Form에 맞춰 생성된 객체(웹)는 Controller(웹)/에서만 사용되어야지, Repository영역(도메인)까지 넘어가면 안된다.