최대한 심플하게 적도록 하겠습니다. (절대 귀찮아서가 아니다.)
M - Model
V - View
C - Controller
M (Model)
정보를 가지고 있는 부분
- 데이터 저장소
- UI의 표시정보를 가짐
- 수정이 발생했을때 수정 통지를 해야함
- 재사용가능
- 컨트롤러, 뷰에 대해 참조 불가
V (View)
사용자가 시작적으로 볼수 있는 부분
- 시각적 담당
- 모델의 정보를 가질 수 없음
- 모델, 컨드롤러의 동작및 구성을 가질 수 없음
- 수정 발생시 통지 필요
- 재사용가능
C (Controller)
모델과 뷰의 연결
- 모델 -> 컨트롤러 -> 뷰를 이용해 정보를 전달
- 뷰 -> 컨트롤러 -> 모델를 이용해 정보를 전달
- 모델의 정보를 알고 있음
- 뷰의 정보를 알고 있음
정리
(주관적인 생각으로 정리한 생각인 점 참고 바랍니다.)
모델, 뷰는 서로 독립되어 있으며 서로 컨트롤러라는 편지를 주고 받으면서 데이터를 통신하는 것 같다.