[투표] Service Layer의 반환 타입 및 Mapper 위치에 대한 아키텍처 논의 #4
Closed
mainlib990
started this conversation in
Polls
Replies: 1 comment
-
|
저는 이번 프로젝트는 DTO를 반환하는 게 낫다고 생각이 바뀌었네요. 일단 제 스타일은 repository를 주입 받아 공통적인 crud 로직을 처리하는 CrudService(도메인 클래스 반환)를 만들고, 그 위에 순수 비즈니스 로직만을 다루는 Service(DTO 반환)이 CrudService를 주입 받아 애플리케이션을 만드는 방식입니다. 근데 우리 프로젝트는 service 계층을 굳이 이중화 할 규모가 아니고, service에서 DB와 연관된 로직과 그렇지 않은 비즈니스 로직을 같이 처리하는 만큼, DTO를 쓰는 게 더 유연하고 controller 계층의 책임도 명확히 할 수 있다고 생각합니다. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
안녕하세요, 팀원 여러분. 저희 프로젝트의 아키텍처 일관성을 위해 Service Layer의 역할과 책임에 대한 기준을 정하고자 합니다.
주요 논점은 "Service Layer가 Controller에 값을 반환할 때 DTO를 사용해야 하는가, 아니면 Domain 객체를 그대로 사용해야 하는가" 입니다. 이는 객체 간 변환을 담당하는 Mapper의 위치와도 직결되는 문제입니다.
아래 두 가지 안을 읽어보시고, 우리 프로젝트에 더 적합하다고 생각하는 방식에 투표해 주세요.
📝 안건 1: Service Layer는 Domain 객체를 반환한다.
장점
단점
📝 안건 2: Service Layer는 DTO를 반환한다.
장점
단점
5 votes ·
Beta Was this translation helpful? Give feedback.
All reactions