본문 바로가기

iOS/RxSwift6

[RxSwift] flatMapLatest (feat. flatMap) 2022.08.09 - [iOS/RxSwift] - [RxSwift] map vs flatMap [RxSwift] map vs flatMap 걍 가끔 헷갈려서 정리한다 map Rx 공식문서에서 말하는 map은 다음과 같다. 각 항목에 함수를 적용하여 Observable에서 내보내는 항목을 변환합니다. 얘는 간단하다. public func map (_ transform: @escaping.. limjs-dev.tistory.com flatMap 보고오십쇼 flatMap과 비교하며 알아보자 flatMap example(of: "flatMap") { let disposeBag = DisposeBag() // 1 let ryan = Student(score: BehaviorSubject(value: 80)) l.. 2022. 8. 9.
[RxSwift] map vs flatMap 걍 가끔 헷갈려서 정리한다 map Rx 공식문서에서 말하는 map은 다음과 같다. 각 항목에 함수를 적용하여 Observable에서 내보내는 항목을 변환합니다. 얘는 간단하다. public func map(_ transform: @escaping (Self.E) throws -> R) -> RxSwift.Observable Observable이 가진 요소들에 연산을 적용하고, 적용된 요소를 반환하는 것이다. 연산은 타입 변환도 해당되고, 단순한 값 연산도 해당이 되겠지 Observable .map { "\($0.name)" } .bind(to: nameLabel.rx.text) .disposed(by: disposeBag) 이런식으로 사용한다. flatMap Observable에 의해 방출된 항목을 Ob.. 2022. 8. 9.
[RxSwift] RxDataSources 사용해보기 아 쓴거 다 날아감 진짜 개빡친다!!!!!!!!!!!!!!!!!! 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 침착하자..... 다시..... DiffableDataS.. 2022. 8. 2.
[RxSwift] concat 최근에 ReactorKit을 적용해보면서 많이 사용하였던 concat에 대해서 알아보려한다. 꽤나 간단하다. concat은 여러 Observable을 연결하는 오퍼레이터이다. 모든 Observable이 정상적으로 완료되고, 마지막에 연결된 tail부의 Observable이 완료되면 complete된다. 그냥 쉽게 생각하면 직렬로 Observable을 연결한다 라고 생각하면 된다. 예제는 다음과 같다. let disposeBag = DisposeBag() let eng = Observable.of("a", "b", "c") let kor = Observable.of("ㄱ", "ㄴ", "ㄷ") let 변수명정하기시로시로 = Observable .concat([eng, kor]) 변수명정하기시로시로 .subs.. 2022. 7. 26.
[RxSwift] Hot vs Cold Observable 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야한다... 알아야하니깐 쓴다. 알아야한다. Cold Observable 기본적으로 Observable은 lazy하다. lazy하다는 말은 뭐시냐? Observable을 정의만 해놓는다고, 뭐가 이뤄지진 않는다는 것이다. subscribe를 해야 이벤트를 방출하므로 처음으로 발생한 이벤트부터 전체 시퀀스를 확인할 수 있다. 코드로 예를 들어보자 let .. 2022. 6. 8.
[RxSwift] Observable, Dispose "Observable sequences를 사용하는 비동기 프로그래밍을 위한 Library" Rx는 Observer 패턴을 사용하며 Observer 패턴이란 특정 객체가 방출할 이벤트를 Observe(관찰)하고 있다가 이벤트 발생을 포착하면 특정 동작을 하는 패턴이다. 방금 말한 Observer 패턴에서 이벤트, 알림을 방출(emit)하는 특정 객체를 Observable, 이벤트를 관찰(subsribe, observe)하는 객체를 Observer라고 한다. 꽤나 간단하다 Observable Observable는 Event를 방출한다. Observer(구독자)는 Observable을 관찰(구독, Subscribe)하고 있다가 전달되는 이벤트를 처리한다. Observer가 Observable을 감시, 관찰하는.. 2022. 3. 20.