XxxResponse를 service 패키지에 두신 이유가 궁금합니다.
XxxRequest / XxxResponse 클래스를 controller 패키지 하위가 아닌 Service 패키지 하위에 두신 이유가 궁금합니다.
의존성 방향을 Controller부터 단방향을 유지하기 위해 하신것으로 유추 하는 바입니다. 하지만 XxxRequest / XxxResponse가 service 패키지 클래스에 있는게 조금 어색해 보여서요.
저는 controller 하위 패키지에 requeset / response를 두고
facade 혹은 service에 클래스로 묶어서 넘길경우 에는는 domain 계층에 만든 dto를 생성해서 넘깁니다.
제가 생각한게 맞는지 답변 부탁드립니다~
(강의 최고입니다. 저만 듣고 싶어요 흙흙)
답변 1
1
dncjf64님, 안녕하세요!
경계에 대한 고민이 없으면 대수롭지 않게 넘어갈 수 있는데, 아주 좋은 질문입니다!
일단 말씀하신대로 의존성 방향을 단방향으로 유지하기 위해서 service 패키지에 위치한게 맞습니다.
자바 언어 자체로는 패키지 간 import 제약이 없다보니, 이러한 관점에 대해 직접 신경쓰면서 개발하게 되는 부분이네요.
request/response라는 용어가 컨트롤러 API 요청/응답에서의 용어라는 관점을 벗겨내면 크게 어려움 없이 이해되실 수 있을 것 같은데요,
서비스 레이어의 요청/응답 객체라는 관점으로 request/response라는 네이밍을 지었습니다!
동일한 용어로 보이더라도 도메인 또는 경계마다 의미와 해석이 달라질 수 있어서, 이러한 관점이라고 봐주시면 될 것 같네요!
저는 controller 하위 패키지에 requeset / response를 두고
facade 혹은 service에 클래스로 묶어서 넘길경우 에는는 domain 계층에 만든 dto를 생성해서 넘깁니다.
위처럼 해도 문제는 없습니다!
다만, 레이어 넘어가면서 요청/응답 객체를 부가적으로 변환하고 새롭게 선언해야하는 과정이 번거로워서
서비스 레이어에서 요청/응답 객체를 만들었네요.
이것도 Request/Response라는 네이밍을 붙였을 뿐이지, 그냥 동일한 DTO라고 봐주시면 됩니다!
혹시 더 궁금한 점 있으시면 편히 문의 주세요!
감사합니다!
consumer에서 에러가 발생할 경우 데이터 유실 문의
0
38
2
게시글 테스트 데이터 삽입
0
43
2
정렬, 필터, 검색 등의 조건이 붙을 경우 최적화할 수 있는 방법이 무엇이 있을까요?
0
95
2
좋아요 기능 정합성 보장 방법
0
90
2
좋아요 동시성처리 최적의 선택?
1
115
2
프론트엔드 msa 환경 api 주소 통합? 과 서버끼리 통신 방식에대해
0
85
2
안녕하세요 무한스크롤 강의듣다가 질문이 있습니다.
0
54
1
조회수 조회 로직 질문
1
64
2
비로그인 유저도 어뷰징 방지 정책
1
63
2
CommentServiceTest의 테스트 로직 질문
0
50
2
무한 스크롤 방식에서 페이지 번호 방식 쿼리의 문제점 의문
1
69
2
path 쿼리 관련 질문드립니다!
0
55
2
antigravity 에디터를 쓰신다면 종료해주세요
1
122
0
프로젝트 구조
0
83
2
article_like_count api test
0
70
2
이벤트 페이로드 객체의 생성 방식이 팩토리 메서드 패턴이 아닌 빌더 패턴인 이유가 궁금합니다!.
0
101
2
[33. 좋아요 수 구현] 에서 테스트 하는 화면 동시성 문제
0
88
2
findByPath에서 articleId로도 검색을 해야 할 것 같아요.
0
87
3
jpa ddl-auto none을 하는 이유와 join 방법
0
92
2
팩터리 메소드와 response 객체 사용 이유가 궁금합니다!
0
85
2
커서 기반 페이지네이션 과 무한 스크롤링
0
97
2
게시글 생성 로직에서 오류 발생시 redis 게시글 수 되돌리기
0
95
2
멀티 모듈이 아닌 MSA 환경에서 common
0
146
2
2Depth 강의 도중 궁금한 점 있어요!!
0
73
2





