계층화 아키텍처(Layered Architecture)
계층화 아키텍처
- 효율적인 개발과 유지보수를 위해 계층화하여 개발
- 대부분의 중/대규모 어플리케이션에서 적용
- 각 레이어는 독립된 역할과 책임(R&R)을 가지며, 근접한 레이어들 끼리만 통신할 수 있다.
- 3가지 레이어
- 프레젠테이션 영역
- 사용자와 상호작용 담당
- 사용자의 요청을 분석/응답
- 비지니스 영역
- 데이터 영역
- 데이터의 저장과 조회 담당
- 주로 데이터베이스와 연동하여 작업
계층화 아키텍처 사용 예시
MVC 패턴
- 애플리케이션을 Model, View, Controller로 구분
- UI를 가지는 대부분의 애플리케이션은 MVC 혹은 변형된 MVC 패턴을 사용
- Model : 데이터 저장, 처리
- View : 화면
- Controller : 사용자 요청을 처리, Model과 View를 서로 연결