[디자인패턴] MVC, MVP, MVVM 비교

요약


MVC/MVP 뷰에 실제로 보일 내용 컨트롤러나 프레젠터가 수동으로 하나씩 다 설정

MVVM 뷰랑 뷰모델의 어떤 속성을 'bind (one-way든 two-way든)'할 수 있고, 속성을 실제로 뷰로 표현하는 과정을 컨버터로 구현. 뷰모델의 속성이 바뀌면 뷰에게 속성이 변경된 사실을 수동으로 알림.

MVI 뷰의 상태에 따라서 뷰가 어떻게 표시될지 순수한 함수로 구현. 뷰의 이전 상태를 파라미터로 받아 새 상태를 반환하는 순수한 함수 (intent)를 뷰에 전달해서 뷰 업데이트.

1. MVC

안드로이드 응애개발자 개발일기 : 네이버 블로그

MVC 패턴은 Model + View + Controller 를 합친 용어이다.