- MVC는 Model, View, Controller의 약자로 하나의 어플리케이션을 구성할때 구성요소를 세가지 역할로 구분한 패턴이다.
- Model은 어플리케이션이 포함하고 있는 데이터 형식과 데이터를 변경하고 검색하는 등의 기능을 포함한다.
- Controller는 User, View, Model의 중개자로서 User 행동에 따라 model에게 접근하여 data를 변경하고 이 변경점을 Controller 내에서 View에 전달한다.
- View는 Controller로부터 Model의 데이터를 받아 User에게 제공하기 위한 화면을 렌더링하는 기능만을 수행한다.
- MVC패턴을 사용하는 이유는 Model, Controller, View가 분리되어 각자 개발하는 것을 가능하게하고 유지보수성, 확장성이 증가하기 때문이다.
MVC 모델을 지키는 규칙
- Model은 Controller와 View에 의존하지 않아야한다.
- View는 Model에만 의존해야 하고, Controller에는 의존하면 안 된다.
- View가 Model로부터 데이터를 받을 때 사용자마다 다르게 보여주어야 하는 데이터에 대해서만 받아야한다.
- Controller는 Model과 View에 의존해도 된다.
- View가 Model로 부터 데이터를 받을 때, 반드시 Controller에서 받아야한다.
샘플코드