[내일배움캠프] TIL_221227

JungHoon Han·2022년 12월 28일
0

내일배움캠프

목록 보기
40/78

SOLID

Layered Architechure Pattern(계층형 아키텍처 패턴)

node.js 심화반 강의를 들으며 튜터님께 들었던 중요한 레이어 아키텍쳐 패턴도 공부했다.
레이어 아키텍처에서 구성되는 각가의 계층은 아래 3계층으로 나뉜다.

  • 프레젠테이션 계층(Presentation Layer)
  • 비즈니스 로직 계층(Business Logic Layer)
  • 데이터 엑세스 계층(Data Access Layer)

    이미지 출처

Persistence Layer가 데이터 엑세스 계층이라고 생각하면 된다.

3계층 아키텍처

3계층 아키텍처는 3가지의 처리과정을 이용해서 구현한다.
1 . Controller : 어플리케이션의 가장 바깥부분, 요청/응답을 처리.

  • 클라이언트의 요청을 처리 한 후 서버에서 처리된 결과를 반환해주는 역할

2 . Service : 어플리케이션의 중간부분, 실제 중요한 작동이 많이 일어나는 부분

  • 아키텍처의 가장 핵심적인 비즈니스 로직이 수행

3 . Repository : 어플리케이션의 가장 안쪽 부분, DB와 맞닿아 있음.

  • 실제 데이터베이스의 데이터를 사용하는 게층

3-Layered Architecture에서는 아래의 플로우를 기반으로 로직이 수행됩니다.

  1. 클라이언트(Client)가 요청(Request)을 보냅니다.
  2. 요청(Request)을 URL에 알맞은 컨트롤러(Controller)가 수신 받습니다.
  3. 컨트롤러(Controller)는 넘어온 요청을 처리하기 위해 서비스(Service)를 호출합니다.
  4. 서비스(Service)는 필요한 데이터를 가져오기위해 저장소(Repository)에게 데이터를 요청합니다.
  5. 서비스(Service)는 저장소(Repository)에서 가져온 데이터를 가공하여 컨트롤러(Controller)에게 데이터를 넘깁니다.
  6. 컨트롤러(Controller)는 서비스(Service)의 결과물(Response)을 클라이언트(Client)에게 전달해줍니다.
profile
Node.js 주니어 개발자

0개의 댓글