반응형

ViewModel 2

[Jetpack] 0. 개요

Jetpack JetPack전체 JetPack 아키텍처 ViewModel UI controller의 데이터를 캡슐화하여 구성이 변경되어도 데이터를 유지하게 하기 위해 ViewModel이 나타난 이유 데이터가 Activity에 종속적이여서 데이터 관리의 힘듦 ex) configuration change가 일어났을 때 데이터 사라짐 -> simple data의 onSaveInstanceState()를 써서 bundle에 저장한 후, onCreate()에서 불러다 쓴다. 한계) 적은 양의 데이터에만 적합(serialized 되는): 많은 양의 UserList나 BitmapList에 적합 X 역할분리: Activity/Fragment는 UI데이터를 보여주고, 사용자애션에 반응하고, OS communication..

Platform/Android 2020.04.03

[AAC] ViewModel | LiveData

ViewModel 왜 사용해 ? Activity, Fragment 생명주기에 따른 데이터 손실? 관리가 어려워서, 개발자들이 힘들었었다.(= 액티비티에 종속된 UI데이터를 유지하는 것이 힘듦) EX. 가로 ↔ 세로 화면 전환, 앱이 background에 있을 때, 메모리관리/부족 등으로 액티비티를 종료하고 다시 시작하는 경우가 있기 때문에 데이터 관리가 어려웠다. Ex. 여러 Fragment에서 데이터를 공유하려면, 공유하는 하나의 Activity에 데이터를 종속시키고 관리해야 했다. -> Activity의 생명주기에 데이터가 종속됨! 그 이전의 해결책 onSaveInstanceState() -> 직렬화할 수 없는 객체는 저장 X (많은 데이터를 저장하기 위해 디자인 되지 X) Retained Fragm..

Platform/Android 2020.03.18
반응형