런닝 코스 공유 서비스

[런닝 코스 공유 서비스] - 4. 패키지 구조

sson-coding 2025. 12. 18. 17:45

패키지 구조

이번 프로젝트에서는 패키지 구조 중 도메인형 구조(Domain-Driven Design) 을 사용할것이다. 도메인형 구조는 도메인에 초점을 맞추어 코드를 구성하는 방식이고, 관련된 기능들을 도메인 단위로 그룹화한다.

선택 이유

도메인 구조의 장점으로는 아래와 같다.

  1. 특정 도메인의 코드를 한 곳에 모아두기 때문에 코드 탐색이 쉽다.
  2. 도메인 단위로 개발하고 유지보수하기 용이하다.
  3. 새로운 도메인 추가 시 다른 곳에 영향을 주지 않는다.

따라서 도메인 구조를 선택하게 되었다.

예시

다음은 Run -ing 서비스의 패키지 구조 예시이다.

추후 변경되면 업데이트 할 것이다.

com.runing
 ├─ user
 │   ├─ controller
 │   ├─ service
 │   ├─ repository
 │   ├─ dto
 │   └─ entity
 ├─ board
 ├─ course
 ├─ chat
 ├─ crew
 └─ common

참고자료

https://velog.io/@chanmi125/Spring-Boot-패키지-구조-계층형-vs-도메인형