Node.js - Architecture

김동하·2021년 3월 7일
0

node

목록 보기
4/5
post-thumbnail

모듈화

MVC 패턴

  • View

화면에 데이터를 뿌려주는 부분

  • Controller

request, response를 처리하는 부분

  • Model

데이터베이스에 접근하는 부분

Node.js Project Layering

Route, Controller, Service, Model 각각의 레이어가 하나의 디렉토리이자 역할!

각각의 레이어는 오로지 바로 아래에 있는 레이어에만 의존한다! ex) Route -> Controller 이렇게 되면 좋은 점은 바로 아래 레이어가 아니면 서로 관여를 하지 않는다. 변경이 일어나도 모두 바꾸지 않아도 됨!!

Architecture

server.js

server.js 엔트리 포인트다.

server.js를 꽃단장하고

app.js

express에 미들웨어를 연결하는 로직을 만든다.

Routes

routes 디렉토리에 UserRouter.js를 생성한다.

index.js

UserRouter.js

userRouter에서 엔드포인트에 따라 분기점을 만들어 준다.

Controller

req를 처리할 컨트롤를 만든다.

index.js

UserController

회원가입/로그인과 관련된 함수를 가져온다.

Service

DB에 접근하는 함수를 만든다.

index.js

UserService.js

Errors

요렇게 에러도 기능 함수로 빼서 재사용 가능하다!

(주말에 마무리)

profile
프론트엔드 개발

0개의 댓글