Layered Architecture

zioo·2021년 12월 20일
0

Backend

목록 보기
9/40

Layered Architecture

각 계층은 하위 계층에만 종속되고 상위 계층으로는 독립적으로 구성되어야 한다. 하위 계층에 종속되어야 하는 이유는 하위 계층의 Return 값을 받아서 상위 계층으로 전달하는 작업이 진행되는 구조이기 때문이다. 실행해야 할 역할들에 따라 계층이 나뉘는 아키텍쳐 방식이다.

https://media.vlpt.us/images/blakekim93/post/1b76c120-6e42-4207-b98b-486eb1c4ff72/layered%20architecture.png

이미지 출처

Presentation layer: View

사용자와 가장 가까운 계층으로 API에서 엔드포인트에 해당하며 http 통신의 요청과 응답을 처리하는 계층이다. 즉 모든 시스템의 상호작용은 이 층을 통하여 이루어 진다. 모든 에러 처리는 이 계층에서 진행되며 하위 계층의 영향을 받게 된다. 웹페이지가 될 수도 있고 Restrul API가 될 수 있다.

Control layer: Controller

시스템의 모든 것을 통제하는 계층으로 생각하자.

Business layer: Service

모든 Business Logic이 구현되는 부분으로 Persistence 계층에 종속적이다. 즉 하위 계층으로부터 데이터를 받아서 가공하는 작업이 실행되는 계층이라 이해하자.

Persistence layer: DAO

데이터베이스와 직접적인 연결을 통해 데이터를 가져오는 작업을 하는 계층으로 최하위 계층에 속한다

https://walbatrossw.github.io/etc/2018/02/26/etc-layered-architecture.html

https://www.oreilly.com/library/view/software-architecture-patterns/9781491971437/ch01.html

https://velog.io/@blakekim93/Layered-Architecture

0개의 댓글