Lifecycle
-
[Android] Compose Lifecycle(안드로이드 개발자 사이트 번역)안드로이드 2021. 8. 3. 17:08
개요 Composable의 생명주기와 Recomposition이 필요한 Composable을 Compose가 어떻게 결정하는지 알아보자. Lifecycle State 관리에서 본것 처럼 Composition은 UI를 설명하고 Composable 실행에 의해 생성된다. Composition은 UI를 설명하는 Composable의 트리구조로 되어있다. Jetpacke Compose가 Composable들을 처음 실행할 때(Initial composition동안) Composition에서 UI를 설명하기 위해 호출하는 Composable을 추적한다. 그러고나서 앱의 State가 변경될때 Jetpack Compose는 Recomposition을 예약한다. Recomposition은 Jetpack Compose가..
-
안드로이드 ViewModel (Android Developer 설명 참고)안드로이드 2021. 7. 27. 15:01
개요 ViewModel은 UI컨트롤러와 데이터를 분리하여 화면 회전과 같이 구성이 변경할때도 데이터가 유지되도록 설계되었다. UI컨트롤러에서 데이터를 관리하게 되어있었는데 그렇게 되면 UI구성이 변경되면(화면 회면과 같은 동작) UI컨트롤러가 제거됐다가 다시 생성된다. 그렇게 되면 UI컨트롤러에 저장된 일시적인 UI 관련 데이터가 삭제된다. 이럴 경우 onSavedInstanceState() Method를 사용해서 onCreate()에서 데이터를 복원할 수 있다. 그런데 비트맵이나 리스트 데이터와 같은 대용량의 데이터에는 부적합하다. 그리고 비동기 호출 처리를 해야한다면, 비동기 호출이 자주 발생하게 되어 이미 수행된 호출을 다시 호출해야하므로 리소스가 낭비된다. 그래서 ViewModel을 통해 UI컨트..