MVC란?
model, view, controller의 약자이다. 이 패턴을 지키면서 코드를 작성하면 책임이 분리되어
코드의 유지보수가 쉬워진다.
m: model
v: view
c: controller
- 모델과 뷰를 이어주는 부분, 사용자의 요청을 받아서 필요한 model의 동작을 실행하고,
결과를 view에 반영하는 매개체 역할이다.
MVC를 지키기 위한 원칙
🔶model은 컨트롤러와 view에 의존하지 않아야 한다.
- 모델 내부에 컨트롤러와 뷰에 관련된 코드가 있으면 안된다.
- 독립적이어야 한다. 컨트롤러와 뷰의 클래스를 import하면 안된다(참조하면 안된다.)
🔶view 내부에 model의 코드는 있을 수 있다. 컨트롤러는 안된다.
🔶view가 model로부터 받는 데이터는 사용자마다 다르게 보여줘야하는 데이터이다.
- 사용자마다 동일하게 보이는 UI부분은 데이터로 받지 않는다.
- 사용자마다의 고유한 값들만(서로 다른 값들만) model로부터 받아야 한다.
🔶컨트롤러에는 model과 view의 코드가 있을 수 있다.
(컨트롤러는 모델과 뷰에 의존해도 된다.)
🔶view가 model로부터 데이터를 받을때, 반드시 컨트롤러 코드 안에서만 받아야 한다.