ViewModel

    [안드로이드] Android Architecture Components(AAC)의 ViewModel

    개요 ViewModel 클래스는 수명 주기를 고려해 UI와 관련된 데이터를 저장하고 관리한다. ViewModel 클래스를 사용하면 화면 회전과 같은 인스턴스 제거 → 재생성 과정을 거쳐도 데이터를 유지할 수 있다. 꼭 ViewModel로 데이터를 유지시키지 않아도 대안은 있긴 하다. 예를 들면 앱의 Activity들 중 하나에 사용자 목록이 포함되어 있는데, 구성이 변경되어 Activity가 다시 생성되면 새 Activity가 사용자 목록을 다시 가져와야 하는데, 데이터가 단순한 경우 Activity의 onSaveInstanceState() 메소드를 사용하여 onCreate()의 번들에서 데이터를 복원할 수 있다. 하지만 이 방법은 사용자 목록이나 비트맵과 같은 대용량의 데이터가 아니라, 직렬화했다가 다..