美文网首页
扩展 - 代理 - 通知

扩展 - 代理 - 通知

作者: 小行为 | 来源:发表于2018-11-14 17:17 被阅读5次

    扩展

    一般扩展做什么??

    1、声明私有属性
    2、声明私有方法
    3、声明私有成员变量

    扩展特点

    编译时决议
    只以声明的形式存在 多数在宿主类的 .m 文件
    不能为系统添加扩展

    代理 Delegate

    特点:

    代理是一种设计模式 传递方式 一对一

    代理工作流程:

    屏幕快照 2018-11-14 下午5.08.03.png

    代理和委托方是以什么形式存在?

    一般声明为 weak 以规避循环引用

    通知 NSNotification

    特点:

    以观察者模式来实现的 用于跨层传递消息的机制
    一对多

    如何实现通知机制??

    屏幕快照 2018-11-14 下午5.14.42.png

    大致实现思路:
    首先有一个通知中心系统类 里面维护一个map表 或者字典
    key -> 对应监听名称
    observer -> observer_list (观察者和 回调方法)

    相关文章

      网友评论

          本文标题:扩展 - 代理 - 通知

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