MVC 패턴이란?
• Model - View - Controller 구조를 말한다.
• Model: 데이터나 Business Logic 내포 (= 데이터 제어)
• View: 사용자에게 보여지는 인터페이스
• Controller: View ↔ Model 사이 요청/응답 관리
• 하나의 Model로 여러 형태 View를 보여줄 수 있다.
→ 1:多 구조로 Model을 재활용 (실서비스는 View 변화가 많은 편)
ex) 하나의 raw 데이터로 표, 원형 차트, 막대 그래프 등을 표현
• 이전에는 View가 Model을 의존해야 했지만
Controller로 View-Model 의존성을 낮추는 구조이다.
= 각 View 요청은 Controller 동작에 영향을 주어서 안된다.
• Controller 역할?
→ Model 에게 무엇을 해야 할지 알려준다.
→ View에게는 언제 화면(데이터)를 새로고침 시기를 알려준다.
• Architecture(아키텍처) 디자인으로 분류되는 패턴
• MVC 패턴은 크게 3가지 패턴이 복합적으로 사용된다
→ Model 관점에서는 옵저버 패턴
→ Contorller 관점에서는 전략 패턴(요청에 따른 전략 구분)
→ View 관점에서는 Composite 패턴
ex) buttons, panels, frames 등 다양한 components로 구성 가능
• MVC 패턴은 웹 프로그래밍에서 주로 사용되는 패턴
① 사용자가 브라우저 URL 입력
② 라우터를 통해 해당 URL을 Controller에 연결
③ Controller는 해당 URL을 로직 처리 데이터가 필요한 경우 Model 조회
④ 어떤 화면을 보여줄지 랜더링해서 응답
'까망 동네 > 디자인 패턴' 카테고리의 다른 글
💻 [디자인패턴] 전략 패턴 (Strategy Pattern) (1) | 2023.10.19 |
---|---|
[디자인패턴] 싱글턴 패턴 (0) | 2023.10.14 |
[프로그래밍] 디자인 패턴 필요성 (0) | 2022.08.29 |
팩토리 메서드 패턴 (Factory Method) (0) | 2022.07.19 |
상태 패턴 (State Pattern) (0) | 2022.05.27 |
댓글