Core Roles

Nest 코드 배치 기준

세 구성 요소는 문법보다 책임 배치가 중요하며, 역할을 지키면 기능 추가와 테스트가 훨씬 단순해집니다.

모듈

기능 조립자

관련 컨트롤러와 서비스를 묶고 다른 모듈에 공개할 제공자만 exports로 드러냅니다.

컨트롤러

HTTP 관문

라우팅, 파라미터 수집, 응답 형태 조율에 집중하고 복잡한 규칙은 서비스로 넘깁니다.

서비스

업무 규칙

데이터 조회, 계산, 외부 연동 등 핵심 로직을 담아 재사용과 단위 테스트를 쉽게 합니다.

프로바이더

주입 대상

레포지토리, 팩토리, 헬퍼도 Injectable로 등록하면 생성 책임이 모듈 안으로 모이고 소비자는 constructor 주입만 사용합니다.