ViewModel

이번 글에서는 MVVM 패턴에서 빠질 수 없는 요소인 ViewModel에 대해서 공부해 본 걸 정리할까(?) 합니다. 자세한 내용과 코드는 공식문서에 있으므로, 공식문서를 참고하시면 될 것 같습니다.. (제가 편한대로 정리하기 때문) ViewModel이란? 액티비티와 프래그먼트와 같은 UI 컨트롤러의 로직에서 데이터를 다루는 로직을 분리하기 위해 등장한 Android JetPack 라이브러리이다. 두 가지를 분리해야 하는 이유 UI 컨트롤러(Activity, Fragment)의 목적 데이터를 표시해 주거나, 사용자가 어떤 작업을 했을 때 반응을 보여주거나 , 권한 요청과 같은 OS커뮤니케이션을 처리하는 것이 UI 컨트롤러의 목적이다. 따라서 UI 컨트롤러에서 데이터를 다루는 로직을 책임지게 되면 많은 유..
이번글에서는 마지막 설계 패턴인 MVVM에 대해서 적어볼까 합니다. MVP의 문제점? MVP 패턴에서는 Presenter가 View에 어떤 일을 요청하는지 명백히 확인이 가능했습니다. 하지만 Presenter와 View가 1:1 관계를 맺고, 강하게 결합되는 문제점이 있었습니다. MVVM의 목표 데이터 바인딩, LiveData 또는 RxJava 같은 Observable 타입을 이용하여 Presenter와 View 사이의 강한 의존성을 제거하는 것입니다. Presenter 대신 Viewmodel이라는 구성요소를 사용합니다. MVVM의 Components Model 데이터와 데이터에 관련된 행위를 의미합니다. 데이터와 데이터를 가져오는 로직 자체를 Model이라고 생각하면 이해하기 편합니다. 특히 MVVM의..
재한
'ViewModel' 태그의 글 목록