[RxSwift] 1b. Observable, Observer - code

miori·2022년 2월 7일
0

RxSwiftBasic

목록 보기
3/29

RxSwift를 21일간 공부하는 루틴
"Rx를 기깔나게 쓰는 신입개발자 도전" 시작 🚀


Observable 생성

create

우선 생성연산자중 하나인 create에 대해 먼저 알아보겠다.
전체 코드는 RxSwiftTIL-0 에 커밋해놓았다.


// 이벤트는 이렇게 전달되어야함! 이라고 정의
Observable<String>.create { (observer) -> Disposable in
    observer.onNext("a")
    observer.on(.next("b"))
    observer.onCompleted()
    
    return Disposables.create()
}

위와 같은 코드 처럼 이벤트를 생성 시킬 수 있다.
물론, 아직 구독을 하진 않았기 때문에 아무일도 일어나지 않는다.

위와 같은 create처럼 생성을 하는 operator , 즉 연산자가 다양하게 있는데, 그중 배열에 저장된 요소를 하나씩 방출하는 from 을 먼저 살펴보면서 구독개념과 같이 보겠다.

from


// 배열에 있는 요소를 하나씩 방출
Observable.from(["a","b"])
    // 구독해야 이벤트가 전달이 됨
    .subscribe { print($0) }
    .disposed(by: disposeBag)
  • from 연산자는 위에서 말했듯이, 배열에 저장된 요소를 하나씩 방출해준다.
  • create 연산자에서 onNext로 계속 하나의 이벤트를 만들었을 때보다 편하다.

subscribe

from 코드를 잘 보면 create와달리 subscribe가 있다.
구독을 한것이다.
구독을 했기 때문에 이벤트가 전달이 된다.


코드를 잘보면 disposable, disposeBag 이라는 워딩이 있다.
다음엔 이부분에 대해 정리하겠다.

profile
iS를 공부하는 miori 입니다.

0개의 댓글

Powered by GraphCDN, the GraphQL CDN