MVVM (2) 썸네일형 리스트형 모던 안드로이드 앱 만들기 (3) - Retrofit, RxJava를 이용한 네트워크 통신 Retrofit2, RxJava RxJava는 asynchronous event based communications (비동기 이벤트 기반 통신)을 위한 라이브러리입니다. 기존 Retrofit 사용 시에는 주로 Call 인터페이스의 enqueue 메서드를 통해서 비동기적으로 API와 통신을 하고 이후에 onFailure와 onResponse로 통신 결과를 전달받습니다. 이번엔 Call 인터페이스 대신 비동기 태스크 처리를 위해 RxJava, 네트워크 통신을 위해 Retrofit을 사용할 것입니다. retrofit2:adapter-rxjava2를 이용하면 기존의 RxJava를 사용하던 타입을 적용해 Retrofit을 통해서 API 호출과 결괏값을 처리할 수 있습니다. RxJava adapter를 추가하여 .. 모던 안드로이드 앱 만들기 (2) - MVVM 구조를 사용한 리스트 구현 저번 앱 소개에 이어서 이번 포스팅에서 만들 것은 국가 데이터를 보여주는 리스트입니다. MVVM을 적용해 앱을 만들기 전에 MVVM이 무엇인지, 각각의 역할과 사용했을 때의 이점을 살펴보겠습니다. MVVM 패턴? business logic를 뷰와 모델로부터 분리하는 아키텍쳐 패턴입니다. 구글이 권장하는 앱 아키텍쳐입니다. 앱 데이터와 상태를 저장하는 데 앱 구성요소를 사용하지 않습니다. Activity 또는 Fragment에 모든 코드를 작성하지 않습니다. 모델에서 가져온 데이터를 통해 UI를 만듭니다. 모델은 앱의 데이터 처리를 담당하는 구성요소입니다. 모델은 앱의 View 객체 및 앱 구성요소와(Activity, Fragment, Service 등) 독립되어 있으므로 앱의 수명 주기 및 관련 문제의 .. 이전 1 다음