Sobes.tech
Junior — Middle

შეგიძლიათ მიაწოდოთ მაგალითი პატტერნის, რომელიც ფუნქციით მსგავსია Observer-ის?

sobes.tech AI

პასუხი AI-სგან

Observer-ის ფუნქციონალთან მსგავს მოდელს iOS-ში NotificationCenter ჰქვია. იგი საშუალებას აძლევს ობიექტებს გამოწერონ შეტყობინებებზე და მიიღონ შეტყობინებები გარკვეული მოვლენების დროს, რაც მსგავსია მეთვალყურებლის მექანიზმის.

ასევე შეიძლება მოიყვანოთ KVO (Key-Value Observing) მაგალითი, რომელიც საშუალებას აძლევს თვალთვალს ობიექტების თვისებების ცვლილებებს.

NotificationCenter-ის გამოყენების მაგალითი:

NotificationCenter.default.addObserver(self, selector: #selector(handleNotification), name: .myNotification, object: nil)

@objc func handleNotification(_ notification: Notification) {
    // შეტყობინების დამუშავება
}

// შეტყობინების გაგზავნა
NotificationCenter.default.post(name: .myNotification, object: nil)