Назад к вопросам
Junior — Middle
66
Объясните, что такое NotificationCenter и как он работает в системе оповещений
Ответ от нейросети
sobes.tech AI
NotificationCenter в iOS — это механизм для передачи сообщений (уведомлений) между разными частями приложения без необходимости прямой связи между ними. Он реализует паттерн «наблюдатель» (observer), позволяя объектам подписываться на уведомления с определённым именем и получать их, когда кто-то публикует такое уведомление.
Как это работает:
- Объект подписывается на уведомление с помощью метода
addObserver, указывая имя уведомления и селектор (метод), который будет вызван при получении. - Когда другой объект публикует уведомление с этим именем через
post, NotificationCenter вызывает методы всех подписчиков. - Это позволяет организовать слабосвязанное взаимодействие между компонентами.
Пример:
NotificationCenter.default.addObserver(self, selector: #selector(handleNotification), name: .myNotification, object: nil)
@objc func handleNotification(_ notification: Notification) {
print("Получено уведомление")
}
// Где-то в коде
NotificationCenter.default.post(name: .myNotification, object: nil)
Таким образом, NotificationCenter помогает организовать коммуникацию внутри приложения без жёстких связей между объектами.