Rx란,
'Rx'는 Reactive Extensions의 약자로, 이벤트를 이벤트 스트림에 전달하고, 관찰하다가 원하는 이벤트가 발생하면 그에 따른 동작을 수행함. 비동기 라이브러리로 반응하는 프로그램으로 ReactiveX라고도 불림
- Observable
이벤트를 만들어내는 (emit)의 주체, 이벤트 스트림을 통해 만들어낸 이벤트를 보냄, 여러 개의 이벤트를 발생시킬 수 있음, 상태를 가지고 있음
- Observer
Observable에 만들어진 이벤트에 반응(react)하는 것의 주체, 이벤트를 받았을 때 수행할 작업을 정의함. 반응을 위해서 지속적으로 Observable을 관찰해야하는데 이를 옵저버가 옵저버블을 구독(Subscribe)한다라고 함
- Obserable Pattern
옵저버 패턴은 옵저버블에 옵저버를 등록해서 옵저버블에 상태 변화가 있을 때마다 메서드를 통해 옵저버에게 통지하는 디자인 패턴, 변수의 상태를 Push, Pull 중 원하는 방식을 통해 알 수 있는 패턴
- Scheduler
작업을 수행할 스레드를 지정, 안드로이드에서 ui를 업데이트하는 메인 스레드로도 사용 가능하며, 스케줄러는 observeOn()을 사용하여 지정
- Disposable
옵저버가 옵저버블을 구독할 때 생성되는 객체, 옵저버블에서 만드는 이벤트 스트림과 이에 필요한 리소스를 관리
- Composite Disposable
여러 개의 Disposable 객체를 하나의 객체에서 사용 가능함
'LANGUAGE > Kotlin' 카테고리의 다른 글
[Kotlin] Bottom Navigation bar (0) | 2020.07.06 |
---|---|
[Kotlin] Facebook 소셜 로그인 (0) | 2020.06.29 |
[Kotlin] Lottie btn (0) | 2020.06.26 |
[Kotlin] 상단바(actionBar), 상태바(statusBar) (0) | 2020.06.26 |
[Kotlin] button action > listener, onClick (0) | 2020.06.26 |