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

권영태·2023년 5월 16일
0

스프링

목록 보기
10/18

스프링부트와 JPA를 활용해 웹 애플리케이션을 개발한다.
다음 코드 및 진행 방법은 인프런 김영한 강사님의 유로 강의 내용을 발췌한 내용이다.
강의 : <실전! 스프링 부트와 JPA 활용 1 - 웹 애플리케이션 개발>

출처 : https://inf.run/zzKt

  • 도메인 모델 패턴과 트랜잭션 스크립트 패턴에 대해 이해한다.

❓ DDD? TDD? BDD?

  • DDD : Domain Driven Design 약어로 도메인 주도 개발 패턴
    도메인과 도메인 로직에 맞춰서 개발한다.
  • TDD : Test Driven Design 약어로 테스트 주도 개발 패턴
    테스트 코드를 먼저 개발한다.
  • BDD : Behavior Driven Design 약어로 행동 주도 개발 패턴
    코드 전 동작할 행위 명세를 먼저 작성한 후 개발한다.

⚙️ 도메인 모델 패턴

  • 도메인 모델이란 도메인을 모든 사람이 이해하고 공유할 수 있도록 단순화 시킨 모델
  • DDD 개발 방식을 따르는 패턴으로 서비스 계층에 비즈니스 로직이 거의 없고 엔티티 내부에 비즈니스 로직을 구현해 엔티티의 객체지향을 활용하는 패턴
  • 엔티티 안 비즈니스 로직이 구현되어 있어 DTO와 쉽게 파악 가능하지만, 각 객체들의 관계를 정립해야 하며 DB 사이 매핑 관계를 더 고려해야한다.

🔄️ 트랜잭션 스크립트 패턴

  • 엔티티에 비즈니스 로직이 거의 없고 Getter, Setter만 가지고 서비스 계층에서 비즈니스 로직을 처리하는 패턴
  • 구현 방법이 쉽다는 장점이 있지만 엔티티 설계/분석 개념이 약해져 중복 코드가 발생할 수 있다는 단점도 있다.
  • 엔티티를 객체보단 자료구조(DTO) 개념으로 이용한다.

참고

profile
GitHub : https://github.com/dudxo

0개의 댓글