美文网首页
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