Кто-нибудь может объяснить важность NSNotificationCenter?
Где их использовать?
В чем разница между NSNotificationCenter и AppDelegate?
Ответ 1
Apple предоставила шаблон наблюдателя в библиотеке Cocoa, называемой NSNotificationCenter.
Основная идея заключается в том, что слушатель регистрируется с помощью вещателя с использованием определенного предопределенного протокола. В какой-то более поздний момент вещателю предлагается уведомить всех своих слушателей, где он вызывает некоторую функцию для каждого из своих слушателей и передает некоторые аргументы. Это позволяет асинхронному сообщению, проходящему между двумя разными объектами, которые не должны знать друг о друге, они просто должны знать о вещателе.
Делегат приложения - это объект, который получает уведомления, когда объект UIApplication достигает определенных состояний. Во многом это специализированный шаблон "один-к-одному" наблюдателя.