개발/Android

개발/Android

RxJava SubscribeOn & ObserveOn

0. 시작하기 전에 RxJava의 연산자를 제대로 이해하기 위해서는 마블 다이어그램에 대해 알아야 한다. 아래 마블 다이어그램을 한 번 보자. 위 마블 다이어그램에 대해 완벽하게 이해하고 있다면 이 포스팅을 읽지 않아도 된다. 만약 그렇지 않다면, 이 포스팅을 읽고 난 뒤에는 완벽하게 이해할 수 있을 것이다. 1. 연산자 소개 (1) subscribeOn() subscribeOn 연산자는 observableSource가 subscribe 되었을 때, 데이터를 다음 스트림으로 전달하는 액션을 수행하는 스케줄러를 지정한다. 간단하게 말해서, subscribeOn 연산자는 "Observable이 동작을 시작할 스레드"를 지정한다. 추가적으로 subscribeOn 연산자를 사용할 때 알아둬야 할 사항 몇가지에 ..

개발/Android

Repository 패턴을 사용하는 이유

오늘은 많은 사람들이 애용하는 디자인패턴 중 하나인 Repository 패턴이다.1. Repository Pattern이란?ViewModel(Domain layer)과 Data 저장소 사이인 Data layer에 중간 계층(Repository)을 만들어 데이터의 출처에 구애받지 않고 동일한 인터페이스로 접근할 수 있게 만드는 패턴 여기서 동일한 인터페이스로 접근한다 라는 말의 뜻이 잘 이해가 되지 않을 수 있다. 간단한 예시를 들어보겠다. A라는 내부 DB에서 데이터를 가져오고, 추가적으로 B라는 외부 출처에서도 데이터를 가져와야하는 상황이다. 여기서 우리가 A와 B 둘 모두의 데이터에 접근 및 사용하기 위해서는 A라는 내부 DB에 대한 처리 + B라는 외부 DB 이 둘 모두에 대한 작업이 필요할 것이다..

개발/Android

[안드로이드] START_STICKY & START_NOT_STICKY

🎈 안드로이드 서비스 오늘 알아볼 것은 안드로이드 서비스에서 주로 사용되는 세가지 시작 방법에 대한 정보입니다. START_STICKY, START_NOT_STICKY, START_REDELIVER_INTENT가 있으며, 각각에 대해 자세히 알아보겠습니다. ✔️ START_STICKY 서비스가 강제로 종료되었을 때 시스템이 자동으로 다시 시작하도록 하는 방식입니다. 서비스가 다른 추가적인 작업 없이도 계속 실행되어야 하는 경우에 주로 사용됩니다. 시스템에 의해 재시작되면 onStartCommand()가 호출되지만 Intent는 Null이 전달됩니다. ✔️ START_NOT_STICKY 서비스가 강제로 종료되었을 때 시스템이 자동으로 다시 시작하지 않도록 하는 방식입니다. 이 방식은 서비스가 특정 작업을 ..

최선의 최선
'개발/Android' 카테고리의 글 목록 (2 Page)