Publisherλ μκ°μ΄ μ§λ¨μ λ°λΌ κ°μ μνμ€λ₯Ό μ λ¬ν μ μλ€.
Combineμμ Publisherλ νλ‘ν μ½λ‘ μ μλμ΄ μμΌλ©°, λ€μμ νμ
μ΄ μ΄ νλ‘ν μ½μ μ±ννλ€.
Publishers μ΄κ±°νμ μ€μ²© νμ
μΌλ‘ μ μλ μ¬λ¬ ꡬ쑰체
Just, Emptyμ κ°μ Convenience Publisher
νμ
μ μ§μ΄ PublisherμΈ AnyPublisher ꡬ쑰체
λ κ°μ μ°κ΄ νμ
μ΄ μ μλμ΄ μλ€.
첫 λ²μ§Έ μ°κ΄ νμ
μ κ°μ νμ
(Output)μ΄λ€.
λ λ²μ§Έ μ°κ΄ νμ
μ μλ¬μ νμ
(Failure)μ΄λ€.
μλ¬μ νμ
μ Error νλ‘ν μ½μ μ±νν΄μΌ νλ€.
Publisher νλ‘ν μ½μ μ΅μ€ν
μ
μΌλ‘ μ¬λ¬ μ€νΌλ μ΄ν°operatorκ° μ μλμ΄ μμΌλ©°, μ΄λ₯Ό μ¬μ©ν΄μ μ΄λ²€νΈ μ²λ¦¬ 체μΈμ ꡬμ±ν μ μλ€.
κ° μ€νΌλ μ΄ν°λ Publisher νλ‘ν μ½μ ꡬννλ νμ
μ λ°ννλ€.
κΈ°λ³Έμ μΌλ‘ Publisher νλ‘ν μ½μ μ€νΌλ μ΄ν°μ μ΄λ¦κ³Ό κ·Έκ²μ΄ λ°ννλ Publisherμ μ΄λ¦μ λΉμ·νκ² λ§λ€μ΄ λμμΌλ, μ΄ νλ‘ν μ½μ μ±ννλ κ°λ³ Publisherλ μ€νΌλ μ΄ν°κ° λ€λ₯Έ νμ
μ Publisherλ₯Ό λ°ννκ² κ΅¬νν΄λ μ μλ€.
protocol Publisher { }
extension Publisher {
func count() -> Publishers.Count<Self>
}
struct Just: Publisher {
func count() -> Just<Int>
}
Publisher νλ‘ν μ½μ μ΅μ€ν
μ
μΌλ‘ μ¬λ¬ μ€νΌλ μ΄ν°κ° ꡬνλμ΄ μμΌλ, Justμ κ°μ κ°λ³ Publisherκ° μ€νΌλ μ΄ν°λ₯Ό μ€λ²λ‘λ©νμ¬ λ€λ₯Έ νμ
μ λ°ννλλ‘ κ΅¬νν κ²½μ°λ₯Ό μ΄λ ΅μ§ μκ² μ°Ύμλ³Ό μ μλ€.
μΌλ°μ μΌλ‘ Publisher νλ‘ν μ½μ ꡬννλ νμ
μ RxSwiftμ Observableκ³Ό λΉκ΅ κ°λ₯νλ€.
μλ¬ μ°κ΄ νμ
μ΄ Neverλ‘ μλ¬ κ°μ μ λ¬νμ§ μλλ€λ κ²μ΄ 보μ₯λλ κ²μ RxCocoaμ Driverμ λΉκ΅ κ°λ₯νλ€.
νλμ κ°μ μ λ¬νκ³ μ’
λ£νκ±°λ, μλ¬λ₯Ό λ΄κ³ μ’
λ£νλ Singleμ λμμ Combineμ Future Publisherλ₯Ό μ¬μ©νμ¬ κ΅¬νν μ μλ€.
Completable, Maybeμ κ°μ RxSwiftμ Traitsλ Combineμ λ³λμ νμ
μΌλ‘ ꡬνλμ΄ μμ§ μλ€.
μΌλ°μ μΌλ‘ Publisher νλ‘ν μ½μ ꡬννλ νμ
μ ReactiveSwiftμ SignalProducerμ Signalκ³Ό λΉκ΅ κ°λ₯νλ€.
SignalProducerλ 'Cold Observable', Signalμ 'Hot Observable'μ μλ―Ένλλ°, Combineμμλ μ΄ λμμ λ³λμ νμ
μΌλ‘ ꡬλΆνμ§ μλλ€.
Publisherμ Operator μ
Convenience Publishers
Publisher in Publishers Enum
Convenience Publishers
Working with Subscribers
Mapping Elements
map / replaceNil / combineLatest / zip
Filtering Elements
Reducing Elements
Applying Mathematical Operations on Elements
Applying Matching Criteria to Elements
Applying Sequence Operations to Elements
Combining Elements from Multiple Publishers
Handling Errors
Adapting Publisher Types
Controlling Timing
Creating Reference-type Publishers
Encoding and Decoding
Identifying Properties with Key Paths
Using Explicit Publisher Connections
Working with Multiple Subscribers
Buffering Elements
Adding Explicit Connectability
breakpoint / breakpointOnError
NotificationCenter.Publisher