AndroidViewModel과 ViewModel
안드로이드 아키텍처 구성 요소 라이브러리의 도입으로, 여러 가지 새로운 클래스를 포함하여, 도입 AndroidViewModel
및 ViewModel
. 그러나이 두 클래스의 차이점을 알아내는 데 어려움을 겪고 있습니다. 이 설명서AndroidViewModel
는 다음과 같이 간결하게 설명 합니다.
응용 프로그램 컨텍스트 인식
ViewModel
나는 간결함에 감사하지만 이것이 정확히 무엇을 의미합니까? 언제 AndroidViewModel
이상 을 사용하도록 선택해야 ViewModel
합니까?
뷰 모델 내에서 컨텍스트를 사용해야하는 경우 애플리케이션 컨텍스트 (getApplication () 호출을 검색하기 위해)를 포함하므로 AndroidViewModel을 사용해야합니다. 그렇지 않으면 일반 ViewModel을 사용하십시오.
편집하다
AndroidViewModel에는 Application Context가 있습니다. 우리는 모두 정적 컨텍스트 인스턴스가 악하다 는 것을 알고 있습니다! (메모리 누수가 발생할 수 있습니다 !!)
그러나 정적 응용 프로그램 인스턴스를 갖는 것이 생각보다 나쁘지 않습니다.
실행중인 응용 프로그램에는 하나의 Application 인스턴스 만 있기 때문입니다.
따라서 특정 클래스에서 Application 인스턴스를 사용하고 갖는 것은 일반적으로 문제가되지 않습니다.
그러나 응용 프로그램 인스턴스가 참조하는 경우 참조주기 문제로 인해 문제가됩니다.
참고 URL : https://stackoverflow.com/questions/44148966/androidviewmodel-vs-viewmodel
'IT story' 카테고리의 다른 글
모듈 선언에 대한 AngularJS 모범 사례? (0) | 2020.07.24 |
---|---|
React js의 "마운팅"이란 무엇입니까? (0) | 2020.07.24 |
각도 지시문 확장 (0) | 2020.07.24 |
HTML5에서 여전히 슬래시가 필요합니까? (0) | 2020.07.24 |
Visual Studio가 파일에서 줄 끝을 혼합하지 못하게 (0) | 2020.07.24 |