首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >交流视点变化

交流视点变化
EN

Stack Overflow用户
提问于 2013-09-15 15:21:53
回答 2查看 41关注 0票数 0

最好的做法是通过NSNotificationCenter沟通一个事件或类似的事情(比如成功登录),还是您可以推荐其他控制机制?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-15 15:40:09

至于我,我不喜欢使用NSNotificationCenter,因为它被大量的系统和自定义事件重载。

如果在NSNotificationCenter中添加了大量的观察者,就不应该忘记删除这些观察者,有时还很难知道调用观察方法的顺序。而且,NSNotificationCenter不会超过一次检查或管理添加相同的观察者(当addObserver不在正确的位置时,有时会成为一个真正的麻烦)。

所以:,为什么不创建一些包含所有所需数据并管理所有登录行为的LoginManager?它将包含一些数据,如:isAuthorithed等。当然,如果您需要实现Observer模式,那么您的单例类可以以与NSNotificationCenter相同的方式实现这一点。

票数 2
EN

Stack Overflow用户

发布于 2013-09-15 15:34:57

这取决于事件是什么以及哪些类可能需要了解它。对于登录/注销通知是一个很好的选择,因为许多不同的类可能希望响应该事件。这并不意味着您也不能让触发登录的类使用委托/块回调。

通常,对许多类可能感兴趣的一般事物的通知和对特定事件(以及触发事件的实例)的直接回调。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18814018

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档