Вопрос

Этот вопрос уже имеет ответ здесь:

Есть ли преимущество в использовании KVO вместо более «общей» (и для моей более надежной) функции Opion) NSNotifications?

Это было полезно?

Решение

Я ненавижу KVO со страстью, главным образом потому, что это заставляет меня направлять все уведомления KVO через одного обработчика. Я использую все, что есть, если у меня есть выбор. Но KVO имеет явное преимущество в том, что он доступен для многих классов в стандартной библиотеке - если вы хотите наблюдать изменения в собственности на некоторых классах из стандартной библиотеки, KVO может быть вашим единственным вариантом. Есть один Очень интересная нить на какао -строителе о KVO и различных вариантах наблюдения и привязки.

(Я должен добавить, что у меня есть только меры с KVO как интерфейс наблюдения высокого уровня. Я думаю, что это очень хорошо, как сантехника для других технологий, особенно привязки.)

Другие советы

Чтобы использовать NSNotifications ToDo нечто похожее на KVO, вам придется написать пользовательские методы аксессуаров для шейки для каждого свойства, которое вы хотели наблюдать.

Это и гораздо менее «универсальный» и гораздо менее надежный, чем использование KVO.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top