웰코발
웰코's iOS
웰코발
전체 방문자
오늘
어제
  • 분류 전체보기 (63)
    • Swift (26)
    • rxSwift (13)
    • SwiftUI (3)
    • iOS (12)
    • 기타 (1)
    • 개발관련 용어정리 (6)
    • 면접준비 (0)
    • 공공데이터 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 주제구독
  • content_available
  • delay
  • Observable
  • collectionview
  • Scroll
  • rxswift
  • SWIFT
  • Coordinator
  • 디자인
  • swiftUI
  • uitableview
  • ReactorKit
  • 대기오염통계 현황
  • cell
  • 측정소정보
  • ios
  • UI
  • alamofire
  • WKWebView

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
웰코발

웰코's iOS

[rxSwift] 기본적인 Observable 의 종류
rxSwift

[rxSwift] 기본적인 Observable 의 종류

2022. 10. 19. 20:30

just

  • 오직 하나의 요소를 포함하는 Observable 시퀀스를 생성
Observable<Int>.just(1)
// 1
// completed

 

of

  • 타입 추론을 통한 Observable 생성
Observable<Int>.of(1, 2, 3, 4, 5) 
// 1
// 2
// 3
// 4
// 5
// completed

Observable.of([1, 2, 3, 4, 5])
// [1, 2, 3, 4, 5]
// completed

 

from

  • 오직 array 형태의 element만 받음
Observable.from([1, 2, 3, 4, 5])
// 1
// 2
// 3
// 4
// 5
// completed

 

empty

  • 아무런 element를 방출하지 않음, completed 이벤트만 방출
Observable.empty()
// completed

 

never

  • 아무런 이벤트를 방출하지 않음. Completed 이벤트 조차 방출하지 않음
Observable.never()
// 아무것도 방출되지 않음.

 

range

  • start 부터 count크기 만큼의 값을 갖는 Observable을 생성
Observable.range(start: 3, count: 5)
// 3
// 4
// 5
// 6
// 7
// completed

그 외 Observable 이지만 방출하는 것들이 다른 것들.  (사용법은 Observable과 같음)

Trait

  • Single, Maybe, completable
  • 이전의 Observable 보다는 좁은 범위의 Observable, 선택적으로 사용할 수 있음
  • 좁은 범위의 Observable를 사용하는 이유는 가독성을 높이는 데 있음

Single

  • .success(value) 또는 .error 이벤트를 방출
  • .success(value) = .next + .completed
  • 성공 또는 실패로 확인될 수 있는 1회성 프로세스 (예. 데이터 다운로드, 디스크에서 데이터 로딩)
  • 정확히 한가지 요소만을 방출하는 Observable에 적합, asSingle로 변경가능

Completable

  • .completed 또는 .error 만을 방출하며, 이 외 어떠한 값도 방출하지 않는다.
  • 연산이 제대로 완료되었는지만 확인하고 싶을 때 (예. 파일 쓰기)
  • asCompleted는 없다.
  • Observable이 값요소를 방출한 이상 completable로 바꿀수 없다.
  • create를 활용해 만들수 밖에 없음, 어떠한 값도 방출하지 않는다.

Maybe

  • Single과 Completable을 섞어놓은 것
  • success(value), .completed, .error를 모두 방출할 수 있다.
  • 사용: 프로세스가 성공, 실패 여부와 더불어 출력된 값도 내뱉을 수 있을 때

'rxSwift' 카테고리의 다른 글

[rxSwift] Observable create 하는 법  (0) 2022.10.20
[rxSwift] Observable subscribe 하는 법  (0) 2022.10.19
[rxSwift] Observable 에 대한 이해  (0) 2022.10.18
[rxSwift] rxSwift의 심장, Observable 이란  (0) 2022.10.18
rxSwift의 장단점  (0) 2022.10.17
    'rxSwift' 카테고리의 다른 글
    • [rxSwift] Observable create 하는 법
    • [rxSwift] Observable subscribe 하는 법
    • [rxSwift] Observable 에 대한 이해
    • [rxSwift] rxSwift의 심장, Observable 이란
    웰코발
    웰코발
    나의 개발 일지

    티스토리툴바