도메인 모델 패턴 vs 트랜잭션 스크립트 패턴

2022. 1. 21. 23:01CSE/Spring

참고 : 인프런에서 김영한님의 "실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발" 강의

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-JPA-%ED%99%9C%EC%9A%A9-1

 

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발 - 인프런 | 강의

실무에 가까운 예제로, 스프링 부트와 JPA를 활용해서 웹 애플리케이션을 설계하고 개발합니다. 이 과정을 통해 스프링 부트와 JPA를 실무에서 어떻게 활용해야 하는지 이해할 수 있습니다., 스프

www.inflearn.com

 

1. 도메인 모델 패턴

: 서비스 계층은 단순히 엔티티에 필요한 요청을 위임하는 역할을 하고, 비즈니스 로직 대부분이 엔티티에 있는 패턴

참고 : https://martinfowler.com/eaaCatalog/domainModel.html

 

2. 트랜잭션 스크립트 패턴

: 도메인 모델 패턴과 반대로 엔티티에는 비즈니스 로직이 거의 없고, 서비스 계층에서 대부분의 비즈니스 로직을 처리하는 패턴

참고 : https://martinfowler.com/eaaCatalog/transactionScript.html

 

- 둘 중에 뭐가 더 좋다!라는 것은 없다. 유지보수에 더 용이한 패턴을 사용하면 됨!

- 한 프로젝트에서 두 패턴이 모두 존재할 수도 있다.