美文网首页
NSNotification KVO delegate 优缺点

NSNotification KVO delegate 优缺点

作者: docManer | 来源:发表于2018-05-24 20:22 被阅读6次

NSNotification (一对多)
优点:
1.简洁,代码量少;
缺点:
1.通知发送者不关心接受者有任何反馈;
2.乱用会导致过程难以追踪,特别是多个通知嵌套使用的情况;
3.NotificatonName使用NSString描述,编译器不会对内容进行检查,容易造成重复或写错;

delegate (一对一)
优点:
1.调用过程清晰,便于追踪;
2.编译器可检测没有实现代理的必须实现的方法;
缺点:
1.实现比较繁琐,代码不够简洁;

KVO (一对多)
优点:
1.简洁,代码量少;
2.不用改变被观察对象内部就可以实现对象间的通讯;(SDK)
3.可以观察到对象的最新值和先前值;
4.可以观察嵌套对象;(使用keyPath)
缺点:
1.属性改变导致观察代码重写;
2.ketPath使用string描述,编译器不会对内容进行检查,容易造成写错;

NSNotification侧重于"广播",delegate侧重于"解耦",KVO侧重于"值的变化"

相关文章

网友评论

      本文标题:NSNotification KVO delegate 优缺点

      本文链接:https://www.haomeiwen.com/subject/ckqejftx.html