1. Layered Pattern

layered 아키텍처는 코드를 논리적으로 부분 혹은 역할에 따라 독립된 모듈로 나누어서 구성하는 패턴입니다.

보통 3개의 레이어가 존재합니다.

  • Presentation Layer
  • Business Layer
  • Persistence Layer

1.1 Presentation Layer

API의 엔드포인트들을 정의하고 전송된 HTTP 요청(request)들을 읽어 들이는 로직을 구현합니다.

1.2 Business Layer

실제 시스템이 구현해야 하는 로직들을 구현하게 됩니다. ex) 회원가입 엔드포인트에서 비밀번호가 8자가 넘는지 확인하여 8자 미만이면 회원가입을 거부해야하는 로직 등

1.3 Persistence Layer

데이터베이스와 관련된 로직을 구현하는 부분. Business Layer에서 필요한 데이터 생성, 수정, 읽기 등을 처리하여 실제로 데이터베이스에서 데이터를 저장, 수정, 읽어 들이기를 하는 역할을 합니다.

2. Layered 아키텍처 적용

2.1 역할에 따른 폴더 및 파일 생성

파일에 속해 있는 signUp 함수가 하는 기능을 역할에 따라 서로 다른 모듈에서 진행합니다.

  • Presentation layer → userController.js
  • Business layer → userService.js
  • Persistence layer → userDao.js
profile
Hi there 👋 i'm backend developer

0개의 댓글