美文网首页
对象间的交互

对象间的交互

作者: 时间在改变 | 来源:发表于2017-08-19 19:01 被阅读0次

1、直白的对象交互

直接传值和调用。

例如A的信息来自于B,这样限制了实现手段的多样性,维护起来容易,但当A的信息不止是来自于B时,就需要深入了解和修改,存在引发其它问题的风险。

2、轻度抽象的对象间交互

多态:

优点:即使不重载基类方法,也有默认实现。

缺点:响应者只能被一个调度者调用。

接口/协议:

优点:能被多个不同调度者调用。

缺点:无法提供默认实现(swift可以提供),可能需要实现不必要去实现的方法。

3、target-action

借助runtime,无视命名域是否完整(不需针对对象或接口提供声明,只需要有target指针和action描述即可)

但失去了编译器检查,必须不经常变动的业务和代码才适用。

4、响应式的对象间交互

调用者无需知道响应者,工程在较低耦合的情况下完成任务。

但响应者必须知道调用者下达了什么样的指令(NotificationName),同时响应式对象交互方案造成跨层数据传递,不利于数据流的控制。

5、基于闭包的对象间交互

闭包可以抓取上下文,跨越命名域传递,从而使得命名域残缺不全的情况下完成对象间交互成为可能。

限制:发起调用的地方和提供回调的地方必须在同一上下文。

缺点:并不一定希望发起调用和提供回调的地方是同一个地方,或者根本不关心回调。

按以下文章做的笔记:

https://casatwy.com/communication_patterns.html

相关文章

  • 对象间交互模式

    对象间交互模式 对象间交互模式

  • 对象间的交互

    1、直白的对象交互 直接传值和调用。 例如A的信息来自于B,这样限制了实现手段的多样性,维护起来容易,但当A的信息...

  • [iOS] 信息交互方式

    代理 通知 Block 一种基于ResponderChain的对象交互方式 对象间交互模式

  • 对象间交互模式

    【转自casatwy大神】https://casatwy.com/communication_patterns.html

  • 对象间交互模式: 解释

    according to对象间交互模式 就相当于你要找人办事,你并不知道这个人的名字,甚至也不知道这个人是男是女,...

  • 读对象间交互模式有感

    读了Case先生的"对象间交互模式" https://casatwy.com/communication_patt...

  • 设计模式(Design pattern):简单&粗暴解析

    1.前言 Java是面向对象的编程,通常都会涉及到 创建对象、对象组成或依赖、对象间交互 的相关操作,一旦在这些操...

  • UML基本使用--时序图

    综述 时序图是一种强调时间顺序的对象交互图(1.是描述对象间交互的图 2.这种图是强调时间顺序的),换句话说就是描...

  • 基于ResponderChain的对象交互方式

    前言 传统iOS的对象间交互模式就那么几种:直接property传值、delegate、KVO、block、pro...

  • 时序图(Sequence Diagram)

    简介时序图是显示对象之间交互的图,这些对象是按时间顺序排列的。顺序图中显示的是参与交互的对象及其之间消息交互的顺序...

网友评论

      本文标题:对象间的交互

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