Скорость выполнения KVO и NSNotifications? - PullRequest
9 голосов
/ 09 августа 2010

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

Мои опасения беспочвенны?Должен ли я использовать их так же, как любой другой вызов метода?Они кажутся очень удобными и заполняют много пробелов, поэтому я хотел бы использовать их, если это возможно.Примечание: я программирую в основном для устройств iOS, поэтому производительность всегда для меня важна.

1 Ответ

21 голосов
/ 09 августа 2010

Обозреватели Key-Value и NSNotifications довольно легкие и отлично работают на настольных компьютерах, которые имеют меньшую мощность, чем iPad. Тем не менее, вопросы производительности "я должен?" Тип можно ответить только путем профилирования. Я думаю, вы найдете, что большинство людей порекомендовали бы, не обращая внимания на любые специфические требования к производительности, которые требуют предварительного проектирования, вы пишете приложение так, как это наиболее целесообразно с точки зрения архитектуры и наиболее эффективно для разработки. Тогда профиль, профиль, профиль. Если вы обнаружите, что KVO или уведомления отнимают значительное количество времени у ваших приложений (я сомневаюсь, что так и будет), то подумайте о более эффективных решениях (хотя их немного).

...