비즈니스 로직 담당 서비스
비즈니스 로직만을 담당하는 BookApplicationService 를 두는게 새롭고 좋은 구조 아닐까 생각이 들어서 제 생각이 맞는지 궁금해서 여쭙습니다.
Query 이름의 서비스는 조회만을
Command 는 등록, 수정, 삭제 담당하는 것이고
또한 이런 서비스 구조가 순환참조 발생 가능성도 줄일 수 있겠죠?
p.s 강의 잘 듣고 있습니다. 처음 겪어보는 내용들이 많아서 재밌고 배울게 많네요. 강의 빨리 더 내주십시오.
답변 2
1
안녕하세요 아라레님! 질문 남겨주셔서 감사합니다 ☺
넵 말씀주신것처럼 책임분리(명령과 조회)로 인해 의존관계가 간소화되어 순환참조 가능성이 줄어든다고 볼 수 있겠네요!
관련 패턴에 대해서 비슷한 질문을 해주신분이 계셔서 해당 답변(답변링크)도 참고해주시면 감사하겠습니다.
추가적인 궁금증이 있다면 언제든 다시 말씀주세요 🙏
0
안녕하세요, 인프런 AI 인턴입니다. 아라레님,
비즈니스 로직을 담당하는 별도의 Service를 두는 것은 좋은 설계입니다. 특히, 비즈니스 로직을 Command 서비스와 Query 서비스로 분리하여 구현하는 방식은 CQRS (Command Query Responsibility Segregation) 패턴과 밀접한 관련이 있습니다. 이를 통해 읽기와 쓰기 작업에 대해 더 나은 확장성과 유지보수성을 제공할 수 있습니다.
CQRS 패턴의 장점:
- 단일 책임 원칙: 각 서비스가 명확한 책임을 가지게 되어 코드의 명확성과 유지보수성을 높입니다.
- 성능 최적화: 읽기와 쓰기 작업을 분리하여 각각 독립적으로 처리할 수 있으므로 성능을 최적화할 수 있습니다.
- 순환 참조 감소: 명확하게 분리된 서비스 구조로 인해 의존 관계가 복잡해질 위험이 줄어들며, 순환 참조 문제도 미연에 방지할 수 있습니다.
이와 관련된 구체적인 사례와 더 많은 설명은 기존의 관련 답변을 참고하시면 도움이 될 것입니다:
- 멀티모듈 구성에서 하위 모듈은 java 모듈로 하는 이유가 궁금합니다. - 모듈 간의 의존성 및 프로젝트 구조에 대한 설명.
- 포트폴리오 질문 - 다양한 기술의 적용 시 고려해야 할 사항에 대한 내용, 클린 아키텍처 관련.
- cqrs에 관한 질문 - 실제 CQRS 패턴을 어떻게 활용할 수 있는지에 대한 답변.
강의를 통해 많은 것을 배우고 계신 것 같아 기쁜 마음입니다. 추가적으로 궁금한 점이 있으시면 언제든지 질문해 주세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
NaverBookRepository.class 의 위치에 따른 모듈간의 의존성에 대해 질문드립니다.
1
31
2
패키지 vs 모듈 선택 기준
0
51
2
Kotlin 테스트 프레임워크
0
82
2
import 오류?
0
71
2
JSON 역직렬화
0
65
2
Spring Cloud 버전 관리 문제
0
270
2
AsyncExcutor 설정값 질문
0
82
2
17강 api서버구현2 질문있습니다.(ai답변이 이상합니다.)
0
117
2
16강 api서버구현 질문있습니다.
0
77
2
14번쨰 부분 중 질문드립니다..<ai답변으로 해도 안되요>
0
144
2
.
0
144
1
서비스에 @Transactional 애노테이션을 사용하시지 않는 이유가 궁금합니다
0
156
2
NaverClientTest 질문있습니다.
0
179
2
멀티모듈 구성 질문입니다.
0
209
3
멀티모듈 구성 강의에 대해 질문이 있습니다.
0
214
3
SPOCK 의존성 추가 후 Generate Test 옵션 미노출
0
202
3
멀티모듈 지식 습득에 관하여 질문 드립니다.
0
250
2
Async Config 테스트컨트롤러의 코드의 동작이 안되는거 같습니다.
0
223
3
author 배열이 비어서 오는 경우가 있으니 참고하세요.
0
190
3
커밋 끊으면서 해주시는거 너무 좋네요.
1
160
2
모의과제 소개
0
179
2
cqrs에 관하여
1
256
2
멀티모듈 문의드립니다.
0
264
2
클린한 아키텍쳐에 관하여
1
234
2





