인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

황태영님의 프로필 이미지
황태영

작성한 질문수

테스트주도개발(TDD)로 만드는 NodeJS API 서버

컨트롤러 함수로 분리

api 분리 관련해서 질문 있습니다.

작성

·

448

0

 안녕하세요? 

 강의 잘 들었습니다.

 api 분리 관련해서 궁금한 게 있습니다.

 강의에서는 라우팅 부분, 컨트롤 부분 두 가지로 분리해서 코드를 관리했는데

 실무에 적용한다면, 프로젝트가 커진다면 MVC 패턴으로 코드를 관리해야 할까요?

  지금처럼 라우팅, 컨트롤 이렇게 두 가지로도 충분히 관리가 될까요?

답변 1

1

김정환님의 프로필 이미지
김정환
지식공유자

수업에서는 간단한 예제라서 라우터와 컨트롤러로 분리했습니다.

하지만 기능이 많아지면 컨트롤러 쪽이 비대해질 수 있는데요, 이럴때는 또 다른 계층을 생각해서 분리해 보셔야합니다.

  • 데이터베이스에 접근하기 위한 계층 (DAO 라고 합니다.)

  • 데이터베이스와 모델을 매핑하기 위한 계층 (ORM이라고 합니다)

  • 어플리케이션에서 공통으로 쓰이기 위한 계층 (서비스라고도 부릅니다) 등

역할에 따라 분리할수 있습니다.

이것은 다른 코드를 읽어보면서 어떻게 나누는지 파악하셔야 하고, 그중 자신 혹은 팀만의 구조를 차용하거나 상황에 맞게 만드시게 될 것입니다.

황태영님의 프로필 이미지
황태영

작성한 질문수

질문하기