KVO
, Notification
보다 단순하고 직관적인 코드를 작성할 수 있다.Next
이벤트를 통해 전달됩니다. 이벤트에 값이 포함되어있으며, 이 과정을 Emission
이라 합니다.Error
이벤트가 전달되고, 정상적으로 종료되면 Completed 이벤트가 전달됩니다.Emission
이라고 하지 않고 Notification
이라고 합니다.Rx의 흐름을 시각적으로 표현합니다.
화살표는 상대적인 시간의 흐름이고 원은 이벤트, 더 정확히 Next Event
를 말합니다. 화살표 오른쪽에 있는 vertical bar는 완료, 즉 Completed Event
이며, Observable의 life-cycle은 이곳에서 종료됩니다.
Error Event
는 엑스로 표시하며, completed event
와 마찬가지로 라이프사이클이 종료됩니다.
Observable<Int>.create { (observer) -> Disposable in
observer.on(.next(0))
observer.onNext(1)
observer.onCompleted()
return Disposables.create()
}
0, 1을 방출하고 종료
Observable.from([0,1])
위 코드는 Observable을 생성하고 이벤트가 어떤 순서로 전달되어야 하는지 정의합니다.
위의 코드만으로는 정수가 방출되거나 이벤트가 발생하지 않습니다. 이벤트가 발생하기 위해서는 Observer가 Observable을 구독해야 합니다.
http://reactivex.io/documentation/ko/observable.html
https://www.youtube.com/watch?v=m41N4czHGF4&list=PLziSvys01Oek7ANk4rzOYobnUU_FTu5ns&index=2&ab_channel=KxCoding
https://yeonduing.tistory.com/60