본문 바로가기

Rxjava, Rxkotlin

Observable이 어떤 구조로 동작되는지 설명해봐라

모든 데이터 흐름을 시간순서로 전달되어지는 스트림으로 처리한다.  스트림이란 시간순서에 의해 전달되어진 값들의 collection이다. 

각각의 스트림은 새로 만들어 새로운 스트림이 될수도 있고 여러개의 스트림이 합쳐질수도 있다. 이 스트림으로 연산자를 통해 값을 변환할수있는데 

생성연산자, 변환연산자 , 결합연산자, 조건연산자, 수학연산자등을 통해 스트림을 변환할수있다. 

이 스트림을 리스닝함으로써 결과값을 얻는것이 subscribe이다. 

Observable은 데이터 소스를 의미하며 이런 Observable에서 데이터를 가져오기 위해선 subscribe해야 한다. 

subscribe에는 세가지 메서드가 있다. 

onNext : 항목이 만들어질때마다 호출된다

onError : 에러가 발생했을때 호출된다.  

onComplete : 구독이 완료되면 호출된다.