observable

홍성표·2022년 6월 23일
0

Observable

  • 데이터 흐름에 맞게 알림(Based on Observer Pattern)을 보내 Subscriber가 데이터를 처리할 수 있도록 한다

Observable Class

  • Observable은 옵저버 패턴을 구현한다. 객체의 상태 변화를 관찰하는 관찰자 목록을 객체에 등록하고,
  • 상태 변화가 있을 때마다 메서드를 호출 -> 관찰자에게 변화를 통지

Why Observable?

  • Observed가 관찰을 통해서 얻은 결과를 의미한다면
  • Observable은 현재는 관찰되지 않았지만 이론을 통해서 앞으로 관찰할 가능성을 의미한다.
  • The Function of Reason(이성의 기능)

Observable의 종류

  • Observable
  • Maybe
    • 데이터가 발행될 수 있거나 발행되지 않아도 완료되는 경우
  • Flowable
    • Back Pressure에 대응하는 기능을 추가로 제공(Observable에서 데이터를 무자비하게 빠르게 발행할 때)

Observable's Notification

  • onNext
    • 데이터 발행을 알려줍니다
  • onComplete
    • 모든 데이터의 발행이 완료되었음을 알려줍니다
    • 단 한번만 발생
    • 더 이상 onNext가 발생안되게 해야됨
  • onError
    • 에러가 발생할 때
    • 이후 onNext, onComplete가 실행이 안 됨

Observable Factory Method

  • Observable은 객체를 생성하지 않고 Factory 패턴으로 생성

  • create(), just(), (Deprecated) from()

  • fromArray(), fromIterable(), fromCallable(), fromFuture(), fromPublisher()

  • interval(), range(), timer(), defer()

profile
안녕하세요. 홍성표입니다.

0개의 댓글