Junior — Middle
Môžeš uviesť rôzne typy Publisher, ktoré sa používajú vo frameworku Combine?
sobes.tech AI
Odpoveď od AI
V rámci frameworku Combine (Apple) existuje niekoľko hlavných typov Publisher, ktoré sa používajú na vytváranie a správu tokov dát:
-
Just — zverejňuje jednu hodnotu a končí.
-
Empty — nezverejňuje žiadne hodnoty, okamžite končí.
-
Fail — okamžite končí chybou.
-
Future — zverejňuje hodnotu alebo chybu v budúcnosti, asynchrónne.
-
PassthroughSubject — umožňuje manuálne odosielať hodnoty odberateľom, neukladá poslednú hodnotu.
-
CurrentValueSubject — podobný PassthroughSubject, ale uchováva aktuálnu hodnotu a odosiela ju novým odberateľom.
-
Timer.TimerPublisher — zverejňuje hodnoty v stanovených časových intervaloch.
-
NotificationCenter.Publisher — zverejňuje oznámenia z NotificationCenter.
Príklad použitia PassthroughSubject:
import Combine
let subject = PassthroughSubject<String, Never>()
let subscription = subject.sink { value in
print("Prijatá hodnota: \(value)")
}
subject.send("Ahoj")
subject.send("Combine")