
데이터가 어떻게 가지고 있을지만 관여, 데이터가 어떻게 보여질 것인지는 관여하지 않음.View의 설정을 직접한다.View와 Model 사이의 중개자 역할(MVC에서 Controller의 역할)Model 에 변화가 생기 ViewModel 에게 자동으로 전달되고, ViewModel과 사전에 binding된 View가 변경.| MVC | MVVM |
|---|---|
| 컨트롤러가 앱의 진입점이다. | 뷰가 앱의 진입점이다. |
| Controller와 View 간의 일대다 관계. | View & View Model 간의 일대다 관계. |
| View에 Controller에 대한 참조가 없다. | View에는 보View Model에 대한 참조가 있다. |
| 읽고, 변경하고, 단위 테스트하고, 재사용하기가 어렵다. | 복잡한 데이터 바인딩이 있는 경우 디버깅 프로세스가 복잡하다. |
| MVC Model 구성요소는 사용자와 별도로 테스트 가능. | 별도의 단위 테스트가 용이하고 코드는 이벤트 기반입니다. |
https://www.guru99.com/mvc-vs-mvvm.html#7
https://eeyatho.tistory.com/77
https://velog.io/@ictechgy/MVVM-%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4
https://www.youtube.com/watch?v=hkRvC0_LnZk