관련 코드는 9장. 모델 - 뷰 컨트롤러 - 컴파운드 패턴를 참조
9장. 모델 - 뷰 컨트롤러 - 컴파운드 패턴(Model-View-Controller, MVC)
9.1 컴파운드 패턴 개요
컴파운드 패턴
2개 이상의 패턴을 합쳐 문제를 해결하는 패턴
단순히 여러 패턴의 조합이 아닌 독립적인 솔루션
9.2 모델-뷰-컨트롤러 패턴
- 가장 대표적인 컴파운드 패턴
- 유저 인터페이스를 구현할 수 있는 유지보수가 용이한 디자인 패턴
9.2.1 MVC 패턴의 구성과 원리
MVC 패턴은 애플리케이션을 모델과 뷰, 컨트롤러로 나눠 구성
-
모델: 애플리케이션의 뇌
데이터와 비즈니스 로직(정보 저장 및 쿼리 로직)을 처리하는 클래스 -
뷰: 외모
유저 인터페이스와 데이터의 시각적 표현을 담당하는 클래스 -
컨트롤러: 접착제 \ 사용자의 요청에 따라 모델과 뷰 사이에서 요청을 처리하는 클래스
-
클라이언트
목적에 따라 정보를 요청하는 클래스
- 모델의 독립성
뷰와 컨트롤러는 모델에 의존하지만, 사용자가 데이터를 직접 요청하기 때문에 그 반대는 아님
9.3 MVC 패턴의 장점
- 유지보수가 쉽고 요소 간의 독립성이 높아져 복잡성이 줄어듦
- 백앤드 로직을 거의 건드리지 않고 독립적으로 프론트앤드를 수정할 수 있음
PREVIOUSEtc