게시글 서비스를 만들다가 들었던 의문이다.
문제상황은 다음과 같다.
1. 게시글을 만든다고 가정했을때, 그 dto에는 카테고리명 이 있음.
2. 카테고리는 따로 테이블로 관리하기에, 카테고리명이 있는 데이터가 있는지 카테고리 Service에서 찾는 코드가 있음.
3. 1)은 게시글 Service인데 2)는 카테고리 Service임.
게시글 Service 코드에서 카테고리 Service를 써도 될까?
생각 :
1) 그냥 컨트롤러에서 두 서비스 불러서 처리할까?
2) 어차피 찾는거니까 게시글 Service에서 카테고리Repository를 쓸까?
3) 그냥 사이클 안생기면 되니까 써도 되나?
그러다가 근본적인 의문이 들었다.
아니 근데 왜 컨트롤러 서비스 레포 구분을해야함?
왜 컨트롤러에서 서비스를 호출해서 레포지토리에 접근해야함?
결론은 의외로 심플하다.
"그럴 필요가 없다" 는 것이다.
왜 저렇게 어찌보면 딱딱하고, Dto를 통한 구조를 해야하는지에 대해서 알게되는 시간이었다.
굳이 안해도 되고, 함으로써 나타나는 이점을 잘 파악하는 것이 개발자의 역량인 것이다.
참조:
https://www.inflearn.com/questions/30618
궁금합니다. - 인프런 | 질문 & 답변
안녕하세요 진짜 좋은 강의와 선생님의 답변으로 많이 배우고 있습니다. 강의를 따라 하다보니 몇가지 궁금증이 생겼습니다. 1. controller에서 responseEntity 를 안쓰시던데 딱히 이유가 있을까요? 2.
www.inflearn.com
'TIL' 카테고리의 다른 글
getby vs findby vs existby (0) | 2022.11.25 |
---|---|
redis란 (0) | 2022.11.21 |
Objects.requireNonNull 사용 이유 (0) | 2022.11.16 |
디자인 패턴이란 (0) | 2022.11.15 |
Scheduler vs Spring batch vs DB Procedure (0) | 2022.11.08 |