Danny의 iOS 컨닝페이퍼
반응형
article thumbnail
[iOS/RxSwift] Subject의 종류
RxSwift 2023. 3. 9. 16:24

Subject Subject들은 특별하게도 Observable로서 데이터를 방출도 하면서, Observer로서 데이터를 구독할 수도 있습니다. 이러한 특징으로, Subject는 Observable이 방출하는 데이터의 흐름을 제어할 수 있는 장점이 있습니다. (예를 들어 Observable이 각각의 이벤트를 방출할 때마다 UI 업데이트하게 되면, 성능이 저하될 수도 있습니다. 특정 조건에만 구현되도록 처리해 주면 이러한 단점을 해결할 수 있습니다.) 또한 여러 Observer들이 서로 데이터를 공유할 수 있습니다. 즉, Hot Observable과 같이 동작하죠. 참고로 Subject들도 Observable과 마찬가지로 Disposable을 리턴합니다. 즉, 일회성을 갖고 있다는 것이죠. (Complete..

article thumbnail
[iOS/RxSwift] Hot & Cold Observable
RxSwift 2023. 3. 9. 14:55

Hot & Cold Observable Hot Observable 구독 여부와 상관없이 이벤트를 발생시킨다. (구독하기 전부터 이미 element 방출) 즉, Observable의 이벤트 스트림은 이미 진행 중이고 구독(subscibe)하는 시점부터 이벤트를 통해 element를 방출합니다. 스트림(stream) : Observable이 방출하는 데이터 흐름 특징으로는 1. 여러 Observer들이 Observable 이벤트를 공유합니다. 2. 구독 이전 시점의 이벤트는 받을 수 없습니다. 대표적으로 Hot Observable을 사용하는 방법은 Subject가 있습니다. Cold Observable 구독하기 전까지 아무런 이벤트도 발생하지 않는다. (구독 시 element 방출) 구독(subscibe)을..

article thumbnail
[iOS/RxSwift] Traits에 대하여
RxSwift 2023. 3. 6. 23:45

Traits Observable이 파생된 형태로 create시 제한적인 이벤트를 사용하고 하고 싶을 때 사용합니다. 간단히 말해 Observable 생성 시 이벤트 onNext, onError, onCompleted를 모두 처리하는 것이 아니라 필요한 이벤트만 사용함. Traits도 엄연히 Observable이고 Traits을 통해 필요한 이벤트만 사용하여 코드를 조금 더 직관적이고 의도를 명확하게 해 주도록 도와줍니다. 종류 RxSwift에는 Single, Completable, Mabye RxCocoa는 Driver, Signal 오늘은 RxSwift의 Single, Completable, Mabye만 알아보겠습니다. Traits의 구현은 각각의 PrimitiveSequence의 create를 통해 ..

article thumbnail
[iOS/RxSwift] Observable 연산자
RxSwift 2023. 3. 6. 20:38

Observable의 연산자 Observable 관련 연산자의 종류는 이와 같습니다. 생성 관련 연산자 just, of, from, range, create 제거 관련 연산자 empty, never, disposable 지연 관련 연산자 deferred 생성 관련 연산자 생성 관련 연산자 just, of, from, range, create에 대하여 알아봅시다. 들어가기 앞서 RxSwift 사용방법을 모르시는 분은 [iOS/RxSwift] Observable, Subscribe 개념 및 사용 방법을 참고해 주세요 just 오직 하나의 Observable sequence만을 생성 및 방출 let justObservable = Observable.just("Hello World") justObservable..

article thumbnail
[iOS/RxSwift] Observable, Subscribe 개념 및 사용 방법
RxSwift 2023. 3. 3. 18:39

Observable & Subscribe 사전적인 의미로 Observable은 "관찰 가능한"이라는 의미를 갖고 있습니다. Observable은 이벤트를 방출하는 동시에 구독자(observer)들이 그 이벤트를 관찰할 수 있기 때문에 이와 같은 이름으로 지어졌습니다. 관찰 가능한 이벤트(Observable)를 구독(subscribe)하게 되면 이벤트(onNext, onError, onCompleted, onDisposed)를 통해 시간의 흐름에 맞춰 이벤트를 방출합니다. NETFLIX로 간단히 비유를 통해 알아봅시다. ⏳ Observable ⌛️ NETFLIX의 영화나 드라마 (영상이 주기적으로 업데이트가 됩니다) 👀 Observer 👀 NETFLIX를 시청하는 사람 📦 subscribe 📦 NETFLI..

반응형