ViewModel은 Android Architecture Component중 하나로 android jetpack라이브러리 형태로 지원한다. 앞서 얘기했듯이, MVVM 모델의 ViewModel을 구현하는데 사용된다. Activity, Fragment들이 UI Controller로서 XML과 함께 화면 rotation의 경우처럼 UI가 destroy-create되는 상황에서도, ViewModel은 data를 들고 완전히 finished 되기 전까지 유지하게 된다. ViewModel은 어쨌든 UI Activity나 Fragment에 대응하고 UI가 완전히 finished되면, 같이 destory되기 때문에 lifecycle의존도가 더 읽기
MVVM
Android: MVVM & Android Architecture Components
viewmodel이나 livedata를 말하기전에 이게 어디서 튀어나온건지 알기위해 app architecture에 대해 알아야한다. 더불어 Android에서 지원하는 Architecture Components도 간단하게 알아보자. 이 부분에 있어 잘 설명된 문서가 있으니 이것을 참조해도 좋다. MVC 패턴 대부분 프로그램이 개발과정과 유지보수를 용이하게 하기위해 구조적 디자인패턴들을 이용한다. 여기서 가장 기본개념은 UI, DATA 그리고 비지니스 로직을 분리하는 것이다. 오랫동안 더 읽기