CS 잡지식
서버 개발의 이상적인 순서(feat.도메인 모델 Pattern, 트랜잭션 스크립트 Pattern)
JIN_YOUNG _KIM
2023. 5. 2. 10:42
(여기서는 도메인 모델 Pattern으로 설명을 하겠다)
도메인 모델 Pattern : 도메인에서 비지니스 로직을 대부분 정의하고, 각 계층(Repository, Service, Controller)에서는 도메
인 엔티티 객체를 해당 계층에서 생성 및 주입을 받아서, 도메인 엔티티에서 구현한 비지니스 로직 메서드를 호출하여,
필요한 요청을 위임하는 Pattern.
- 이상적인 서버 개발 순서 -
1. 요구사항 분석
2. 도메인 모델 분석
3. DB Table 모델링
4. [2~3]을 바탕으로 도메인의 엔티티를 JPA를 이용하여, 연관 관계 매핑, 연관 관계 주인, Lazy 설정, 양방향/단방향 설정, 연관 관계 객체 선언, fetch join, cascade, join table 생성 선언, 비지니스 로직, 조회 로직 등 각종 로직 정의 등을 한다.
5. 그 다음으로는 애플리케이션 계층들을 개발한다.
-> 이때, 가장 최종적으로 위임되는 계층 순으로 [도메인] 객체에게 필요한 요청들을 위임하여, 개발을 하자
Reposiotry(최종적으로 위임됨) -> Service(Repository를 가져다 씀) -> Controller(Service를 가져다 씀)
주의!!! Controller, Service, Repository가 1개씩만 있어야 하는 것은 절대 아니다.
오히려 그런 경우는 거의 없다.