계층형 아키텍처 패턴 (Layered Architecture Pattern)
- 시스템을 여러 계층으로 분리하여 관리하는 아키텍처 패턴입니다.
- 현재 가장 널리 채택되고 있는 아키텍처 패턴중 하나입니다.
- 단순하고 대중적이면서 비용도 적게 들어 사실상 모든 어플리케이션의 표준 아키텍처
- 어떤 아키텍처 패턴을 도입할지 확인이 없을 때에는 계층형 아키텍처 패턴은 좋은 선택지가 될수있음
- 각 계층을 명확하게 분리해서 유지하고, 각 계층이 자신의 바로 아래 계층에만 의존하게 만드는 것이 목표
- 계층화의 핵심은 각 계층이 높은 응집도 를 가지면서, 다른 계층과는 결합도 를 최소화 하는것입니다.
계층형 아키텍처 패턴의 장점
- 관심사를 분리하여 현재 구현하려하는 코드를 명확하게 인지할수 있습니다
- 각 계층은 서로 독립적이며, 의존성이 낮아 모듈을 교체하더라도 코드 수정이 용이합니다
- 각 계층별로 단위 테스트를 작성할 수 있어 테스트 코드를 조금 더 용이하게 구성할수 있습니다
3계층 아키텍쳐
- 컨트롤러(Controller): 어플리케이션의 가장 바깥 부분, 요청/응답 을 처리
-클라이언트의 요청(Request) 을 수신 한 후 서버에서 처리된 결과 응답(Response)해 주는 역활 - 서비스(Service): 어플리케이션의 중간 부분, API의 핵심적인 동작이 많이 일어나는 부분
-아키텍처의 가장 핵심적인 비지니스 로직이 수행되는 부분 - 저장소(Repository):어플리케이션의 가장 안쪽 부분, 데이터베이스와 맞닿아 있음.
-실제 데이터베이스와 통신하는 계층
'Node 공부' 카테고리의 다른 글
계층형 아키텍쳐 형식으로 리팩토링 해보기 (0) | 2024.06.12 |
---|---|
아키텍처 패턴 Architecture Pattern (0) | 2024.06.11 |
객체 지향 프로그래밍 OOP (1) | 2024.06.10 |
객체 지향 (0) | 2024.06.10 |
MySQL 트랜잭션 (0) | 2024.06.09 |