iOS 中 对象间的通信

1>delegate:代理是一种设计模式,它是通过被代理者定义代理协议委托代理者实现协议,用于两个对象间的通信交互。在 IOS 中 delegate 主要用于视图与使用对象之间的通信交互,delegate 的效率是最高的,典型的特就是它有返回值。
2>block:block 类似与函数,可作为参数进行传递用于回调,block 可以定义在方法里,函数不能。block 语法简单,写在方法里可以访问局部变量可以使代码更加的紧凑,结构化。相对于 delegate,block 不用建立代理协议,使用简单。
3>通知:NSnotification 一个中心对象注册和发送通知,所用的其他的对象都可以收到通知。
4>KVC:键-值编码是用于间接访问对象属性的机制,并不需要调用 set 或者 get 方法访问变量,是通过 set value for key 进行间接访问实例变量。
􏱘􏱣5>􏱤KVO:​键值观察模式,被观察者添加观察者,被观察者使用KVC键值编码来修饰它的实例变量,当被观察者发生改变时,观察者就能侦听到被观察者改变的事件,从而做出相应。
 

posted @ 2016-06-20 17:52  不愿意透露姓名的牛叔  阅读(102)  评论(0编辑  收藏  举报