Junior — Middle
Ar galite pateikti pavyzdį, kaip veikia panašus į Observer šablonas?
sobes.tech AI
Atsakymas iš AI
Panašus į stebėtoją modelis yra NotificationCenter iOS. Jis leidžia objektams prenumeruoti pranešimus ir gauti žinutes, kai įvyksta tam tikri įvykiai, kas yra panašu į stebėtojo mechanizmą.
Taip pat galima pateikti KVO (Key-Value Observing) pavyzdį, kuris leidžia stebėti objektų savybių pokyčius.
NotificationCenter naudojimo pavyzdys:
NotificationCenter.default.addObserver(self, selector: #selector(handleNotification), name: .myNotification, object: nil)
@objc func handleNotification(_ notification: Notification) {
// pranešimo apdorojimas
}
// Pranešimo siuntimas
NotificationCenter.default.post(name: .myNotification, object: nil)