모주 ERD 사진.svg

ERD & 도메인 설계

프로젝트 구조


스크린샷 2025-04-23 오전 2.32.15.png

도메인 : article(기사), class(수업), item(종목), organ(기관/선생님), team(학생/참여 팀)

DDD | Domain Driven Design

도메인 주도 설계의 목표는 어플리케이션 또는 그 안의 모듈간의 의존성은 최소화하고, 응집성은 최대화하는 것

→ 모주 프로젝트에서는 각 도메인이 독립적으로 역할을 수행할 수 있고 도메인 간의 의존성을 없애고 도메인 내부의 응집성을 최대화 함

→ 각 도메인이 독립적인 존재이기 때문에 기능 개발 및 유지보수 측면에서 유리함

도메인 계층 구조


스크린샷 2025-04-23 오전 2.38.06.png

각 도메인 내부에는 계층형 구조로 설계 됨

Presentation → Application → Domain

Common : 계층 간에 공유하는 정보들(ex. DTO)

Presentation → Application → Domain

  1. Presentation 계층 : HTTP 요청을 받아 유효성을 검증하고, 적절한 응답을 반환하는 인터페이스 계층입니다. 주로 컨트롤러가 이 역할을 담당하며 사용자의 요청을 받아 Application 계층으로 전달
  2. Application 계층 : 비즈니스 로직을 처리하고 실제 작업을 수행하는 계층입니다. Presentation 계층의 요청을 해석하여 Domain 계층의 기능들을 조합하고 트랜잭션을 관리
  3. Domain 계층 : 비즈니스의 핵심 규칙과 로직이 구현되는 계층으로, 실제 데이터 처리와 비즈니스 규칙을 검증하며 데이터베이스와의 상호작용을 담당

< 핵심 >