Sobes.tech
Junior — Middle

Μπορείτε να δώσετε ένα παράδειγμα προτύπου που μοιάζει στη λειτουργία με το Observer;

sobes.tech AI

Απάντηση από AI

Ένα μοτίβο που είναι παρόμοιο με τον Observer είναι το NotificationCenter στο iOS. Επιτρέπει σε αντικείμενα να εγγράφονται σε ειδοποιήσεις και να λαμβάνουν μηνύματα όταν συμβαίνουν συγκεκριμένα γεγονότα, κάτι που μοιάζει με τον μηχανισμό παρατηρητή.

Μπορεί επίσης να αναφερθεί το παράδειγμα του 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)