Spring_레이어드 아키텍처

정우주·2022년 7월 26일
0

Spring

목록 보기
2/4
post-custom-banner

❓레이어드 아키텍처(Layered Architecture)

복잡한 애플리케이션을 여러 층으로 나눠서 설계하여 개발하는 것.

위와 같이 n개의 계층을 가정할 때 ‘n-레이어드 패턴’이라 함.

📢 표준 레이어드 아키텍쳐 5개 파트

  • User interaction layer
    화면을 통해 사용자와 상호작용하는 레이어로 애플리케이션에서 가장 눈에 띄는 계층으로 애플리케이션이 어떻게 보여지는지를 결정.
  • Functionality layer
    Business rules layer를 기반으로 시스템의 기능, 방법 및 절차에 대한 것을 나타내며, 메뉴나 버튼이 어떻게 작동할지와 시스템이 화면을 탐색하는 방법에 대해 결정.
  • Business rules layer
    전체 애플리케이션의 동작에 대해 결정하는 계층.
  • Application core layer
    메인 프로그램과 코드 정의, 애플리케이션의 기본 기능을 포함한 계층.
  • Database layer
    테이블, 인덱스, 애플리케이션에 의해 관리되는 데이터들을 포함하는 계층.

📢 레이어드 아키텍처 장점
각 레이어들은 자율적이다.

📢 레이어드 아키텍처 단점
유지 보수 시 변경되는 것에 대한 분석이 필요하며 유지 보수가 어렵다.

📢 레이어드 아키텍처 예시

  • Gmail 서비스
    모든 메세지를 처리하는 내부 버전을 개발하여 여러 언어로 동작하는 외부 유저 인터페이스를 개발.
  • Gmail Application의 여러 계층
    1) 모든 처리를 담당하는 내부 레이어
    2) 사용자가 사용하는 언어로 소통하는 외부 레이어
    3) 사용자의 이메일 메세지가 저장되어 있는 데이터베이스와 상호작용하는 또 다른 레이어
profile
Server Engineer 🌱
post-custom-banner

0개의 댓글