카테고리 없음
MVC 패턴
by cook_code
2023. 4. 26.
MVC 패턴이란
MODEL, CONTROLLER, VIEW로 구성된 소프트웨어 디자인 패턴이다.
요약 >
MODEL - 데이터나 기본 기능에 관한 부분
VIEW - 유저 인터페이스, 사용자에게 보여지는 부분
CONTROLLER - 모델과 뷰를 연결하는 제어 모듈
MVC 패턴을 사용하는 이유
- 비즈니스 로직과 UI로직을 분리하여 유지보수를 독립적으로 수행할 수 있다.
- MODEL과 VIEW가 다른 컴포넌트들에 종속되지 않아 애플리케이션의 확장성, 유연성에 유리하다.
- 중복 코딩의 문제점 제거
각 구성요소의 특징
- 사용자가 편집하길 원하는 모든 데이터를 가지고 있어야 한다.
- 뷰나 컨트롤러에 대해서 어떠한 정보도 알지 말아야 한다.
- 변경이 일어나면, 변경 통지에 대한 처리방법을 구현해야 한다.
- 모델이나 뷰에 대해서 알고 있어야 한다.
- 모델이나 뷰의 변경을 모니터링해야 한다.
- VIEW는 모델이 가지고 있는 정보를 저장해서는 안된다.
- 모델이나 컨트롤러와 같이 다른 구성요소를 몰라야한다.
- 변경이 일어나면, 변경 통지에 대한 처리방법을 구현해야 한다.
DISPATCHER-SERVLET
HTTP 프로토콜로 들러오는 모든 요청을 받아 적합한 컨트롤러에 위임해주는 역할로 MVC 구조에서 함께 사용된다.
부터 응답까지 디스패처 서블릿이 작동하는 전체 과정 >
- 클라이언트의 요청을 디스패처 서블릿이 받음
- 요청 정보를 통해 요청을 위임할 컨트롤러를 찾음
- 요청을 컨트롤러로 위임할 핸들러 어댑터를 찾아서 전달함
- 핸들러 어댑터가 컨트롤러로 요청을 위임함
- 비지니스 로직을 처리함
- 컨트롤러가 반환값을 반환함
- 핸들러 어댑터가 반환값을 처리함
서버의 응답을 클라이언트로 반환함 |
참고블로그