반응형
내용을 전부 쓰는 것 보다 좀 더 요약하는게 좋을 것 같아서 요약하는 방식으로 변경했습니다.
https://www.raywenderlich.com/books/combine-asynchronous-programming-with-swift/v2.0 책 보면서 학습하고 있습니다.
더보기
이전글
- 2021/01/03 - [Reactive Programming] - [Combine 책 정리] Chapter1. Hello, Combine!
- 2021/01/06 - [Reactive Programming] - [Combine 책 정리] Chapter2. Hello, Combine!
- 2021/01/12 - [Reactive Programming] - [Combine 책 정리] Chatper 3: Transforming Operators
- 2021/01/13 - [Reactive Programming] - [Combine 책 정리] Chapter 4: Filtering Operators
prepend
- Prepend가 앞에 추가한다는 뜻
- value / collection / publisher를 앞에 추가할 수 있음
- Publisher를 prepend 할때는 앞에 붙인 publisher가 complete 되고나서야 그 다음 publisher가 값을 전달함
append
- Append는 뒤에 붙이는 것
switchToLatest
-
publisher들을 보내는 publisher를 만들었을 떄, 가장 최근에 전달된 publisher로 전환해줌
let publishers = PassthroughSubject<PassthroughSubject<Int, Never>, Never>() publishers .switchToLatest()
-
버튼을 터치하면 API 호출하는 상황에서, 터치를 여러번 할 수 있는데 switchToLatest를 쓰면 마지막 publisher만 사용하게 된다.
merge
- 여러 publisher를 하나로 합쳐줌
- merge된 publisher가 전부 complete 되어야, mereg된 publisher도 complete 됨
combineLatest
- 모든 publisher들의 value가 하나라도 방출되었을 때 부터, 튜플로 묶어서 전달함
- Publisher A에서 1, 2를 방출하고 Publisher B에서 "a"를 방출헀다면 (2, "a")가 튜플로 묶여서 보내진다.
- 그리고 다시 Publisher B에서 "b"를 방출하면 (2, "b")가 튜플로 묶여서 보내진다.
- 모든 publisher 들이 complete되어야 combineLatest로 묶인 publisher도 complete 된다
zip
- publisher들의 value를 튜플로 묶어서 전달함
- 각 publisher들의 value가 짝이 맞는대로 튜플로 만듦
- 여러번 튜플로 묶이지는 않음
반응형
'iOS > Combine' 카테고리의 다른 글
[Combine 책 정리] Chapter 7: Sequence Operators (0) | 2021.01.22 |
---|---|
[Combine 책 정리] Chapter 6: Time Manipulation Operators (0) | 2021.01.19 |
[Combine 책 정리] Chapter 4: Filtering Operators (0) | 2021.01.13 |
[Combine 책 정리] Chatper 3: Transforming Operators (0) | 2021.01.12 |
[Combine 책 정리] Chapter 2: Publishers & Subscribers (0) | 2021.01.06 |