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

0

TIL

목록 보기
123/126

예전 프로젝트를 진행하며 설계를 했을 때 그저 배운대로 서비스에 주요 기능들을 하는 메서드들을 작성했었다.
그거에 대한 이유는 생각해보지 못했었고 그게 당연한줄 알고있었는데
이번에 스프링 강의를 듣다보니 객체들간의 관계를 로직을 포함하는 도메인 모델 패턴을 사용해보았다.

레포지토리에서 주된 메서드들을 만들고, 서비스에서는 이 관계들을 연결해주는 코드들만 작성하여 객체 지향 프로그래밍 원칙에 좀 더 가까운 설계 방법이다.


트랜잭션 스크립트 패턴과 도메인 모델 패턴은 소프트웨어 개발에서 사용되는 아키텍처 패턴으로, 각각의 패턴은 다른 방식으로 비즈니스 로직을 구성하고 코드를 구현하기 때문에 필요에 따라 선택하는 것이 좋다.

트랜잭션 스크립트 패턴:

비즈니스 로직을 단일한 트랜잭션 스크립트로 구성하는 방식으로, 보통 서비스 계층에서 스크립트들이 호출되어 사용된다.
데이터베이스와 직접적으로 상호작용하며 비즈니스 로직은 대부분 데이터베이스와 관련된 작업에 집중
비교적 단순한 비즈니스 로직이나 데이터 중심의 애플리케이션에 적합하다.

비즈니스 로직을 데이터베이스와 긴밀하게 결합

도메인 모델 패턴:

객체 지향 프로그래밍의 원칙에 따라 도메인 객체들이 비즈니스 로직을 포함하고 이를 조합하여 작업을 수행
데이터베이스와의 상호작용은 주로 저장소나 리포지토리를 통해 이루어지고, 도메인 객체들은 데이터베이스에 대한 접근을 숨기고 비즈니스 로직에만 집중
복잡한 비즈니스 도메인을 다루거나 객체 지향적 설계 원칙을 따르고자 할 때 유용

도메인에 집중하고 비즈니스 로직을 객체 지향적으로 구성

0개의 댓글