iOS几种消息传递区别

KVO 观察者必须知道发送者
观察者知道发送者的生命周期 发送者销毁之前,需要取消观察者的注册

Notification 不相关的代码中进行消息传递
发送者和接受者互相不知道

delegate 定制某个对象的行为 发送者知道是哪个接受者(delegate)

block 可以实现delegate的所有 但是会引起循环引用
发送者能保证释放掉对block的引用

add-target 响应界面的消息

附好文:
https://www.objc.io/issues/7-foundation/communication-patterns/

http://beyondvincent.com/2013/12/14/2013-12-10-124-communication-patterns/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 每个应用程序或多或少,都由一些松耦合的对象构成,这些对象彼此之间要想很好的完成任务,就需要进行消息传递。 本文将介...
    石丘阅读 1,772评论 4 7
  • iOS网络架构讨论梳理整理中。。。 其实如果没有APIManager这一层是没法使用delegate的,毕竟多个单...
    yhtang阅读 5,277评论 1 23
  • 设计模式 1.delegate和notification什么区别,什么情况使用? 2.描述一下KVO和KVC。 K...
    丶逐渐阅读 1,983评论 3 2
  • 每个应用或多或少都由一些需要相互传递消息的对象结合起来以完成任务。在这篇文章里,我们将介绍所有可用的消息传递机制,...
    爱敲代码的果果阅读 4,070评论 0 2
  • 《东方早报》上的一篇剧评概述韩剧《密会》时,称其为一部古典音乐的MV,就是这句话,开启了我观看韩剧的旅程。 将观看...
    吴玫阅读 1,082评论 0 2