Observable, Observer

Observable

RxSwift의 정의 중 하나를 가져와보면,

비동기 프로그래밍을 관찰 가능한 순차적 형태와 함수 형태로 만들어줌

여기서 관찰 가능한 순차적 형태라는 것이 바로 Observable

즉, Observable의 정의는

<aside> 💡 1. 관찰이 가능한 흐름으로, 2. 비동기 이벤트의 시퀀스를 생성할 수 있는 대상

</aside>

RxSwift에서 Observable의 정의를 살펴보면 아래와 같이

public class Observable**<Element>**: ObservableType {}

제네릭 클래스로 구성이 되어있음!

정의 1번에서 비동기 이벤트를 어떤 관찰 가능한 형태로 만든다는 것은,

비동기 이벤트를 제네릭 타입의 Observable이란 클래스 인스턴스를 만든다는 것과 같은 의미!

그럼 정의 2번, 비동기 이벤트의 시퀀스를 생성..?

…흠냐

조금 더 쉬운 예시를 가져와 보자!

가장 대표적이고! 쉬운 비동기 예시는 바로 UIButton임!