-
Notifications
You must be signed in to change notification settings - Fork 4
`20.11.03 회의록
yejineee edited this page Nov 6, 2020
·
1 revision
-
목적
- 서비스, 컨트롤러, 라우터의 역할을 잘 나눠서 api 구현을 하자!
- 의존성 주입을 통해 단위 테스트를 더 쉽게 할 수 있도록 하자.
-
역할
- 라우터 : 말 그대로 라우팅 역할을 한다. url에 대한 컨트롤러를 실행시킨다.
- 컨트롤러: 요청에 대해 처리하고, 응답을 보낸다.
- 서비스: 컨트롤러에서 필요한 비즈니스 로직을 처리한다.
-
/routes
폴더 안에 모델 별로 폴더를 생성하고, 아래의 파일을 만든다.-
index.js
파일/issues에서 더 깊은 레벨의 url에 대한 라우팅을 담당한다.
컨트롤러 객체를 초기화하고, 각 라우터에 대한 컨트롤러를 지정한다.
-
**-controller.js
- 컨트롤러 함수를 정의한다.
- 의존하는 서비스 객체를 파라미터로 받는다.
- 컨트롤러 이름은 {모델이름}{Controller}이며, 파스칼 케이스로 작성한다.
const **Controller = (**Service) => ({ readList(req, res, next){ ... }, createLabel(req, res, next){ ... }, })
-
**-controller.test.js
- controller의 테스트 코드이다.
-
-
/services
폴더에 각 모델 이름으로 파일을 생성- req, res를 전달받지 않는다.
- http 상태 코드와 같은 것들을 반환하지 않는다.
- 의존하는 모델은 객체로 묶여서 파라미터로 전달된다.
- 서비스 이름은 {모델이름}{Service}이며 파스칼 케이스를 작성한다.
const **Service = ({**Model}) => ({ getLabelList() { return **Model.findAll(); }, }); export default **Service;
1️⃣ Week1
목표
데일리스크럼
회의
회고
2️⃣ Week2
목표
데일리스크럼
회의
회고
2️⃣ Week3
목표
데일리스크럼
회의
회고