도메인의 관심사 분리와 의존관계를 어떻게 잡아야할지 헷갈려요
안녕하세요? 요즘 프로젝트에 아키텍처도 적용해보고 재사용성이 좋은 코드를 만들기 위해 열심히 삽질중인 대학생입니다. 최근 계층화 아키텍처와 DI를 알게되어 제 코드에 적용시켜보려고 하고있는데 도메인 관심사 분리에 따라 코드를 어디서부터 어디까지 같은 도메인에 넣어야 할지 헷갈리네요 예를 들어 제가 구현해야하는 비즈니스 요구사항이 게시판 기능이라고 할때 1. 게시글 목록을 조회하면 게시글 제목과 댓글의 개수가 함께 목록으로 뜬다 2. 게시글 상세 조회를 하면 게시글 내용과 댓글의 내용이 함께 뜬다 이와 같은 요구사항을 구현해야 한다고 가정하겠습니다. 먼저 게시글 목록을 조회하는 기능을 구현한다고 했을때 처음에는 아래의 첨부하는 사진(1)과 같은 의존관계를 생각했습니다. 왜냐하면 댓글 도메인은 순수 댓글과 관련된 기능들에 관한 코드가 들어가야 한다고 상각했기 때문에 "게시글에 달린 댓글 개수"를 구하는 인터페이스는 댓글 기능 자체에서는 필요없으니 게시글 도메인에서 구현해야 한다고 생각했거든요 그런데 이게 정답인지는 잘 모르겠습니다.. 댓글 개수를 조회하는 기능을 댓글 도메인에 구현하고 게시글 도메인을 댓글 도메인에 의존하는게 맞나? 싶기도 하고..사진(2) 너무 헷갈리네요..뭐가 정답일까요?
Loading...