电子发烧友App

硬声App

扫码添加小助手

加入工程师交流群

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>C语言|源代码>对象间交互推导过程及模式选择

对象间交互推导过程及模式选择

2017-09-25 | rar | 0.3 MB | 次下载 | 1积分

资料介绍

  对象间交互模式2017-06-22 11:32程序设计/设计推荐人:feizhu422

  前言

  直白的对象间交互

  轻度抽象的对象间交互

  使用Target-Action淡化接口概念的对象间交互

  响应式的对象间交互

  基于闭包的对象间交互

  推导过程

  总结

  前言

  闭包在什么场景下才是最优选择?理由?补充说明一下:很多场景都适用闭包,但不是所有场景下闭包都是最优选择。

  这篇文章主要就是回答这个问题的。

  但是在直接切入闭包之前,我们需要有一个推导的过程,在推导过程之前,我们还需要梳理一下现有的交互模式。所以,关于这篇文章的内容,更确切地说应该是讨论了对象间各种交互方式。

  这个主题其实很早之前业界也讨论过,objc.io很早就有《Communication Patterns》这篇文章详细讲过这个问题。这篇文章在很多地方说得都是对的,但这篇文章在block的讨论上不够全面。国内也有很多人关于对象间交互的问题写过文章,但这些文章相比《Communication Patterns》来说,就已经错得十分离谱了。

  本文是从另一个角度讨论了同样的问题,文末给的决策图可以作为《Communication Patterns》的补充去做参考。

  直白的对象间交互

  解决对象间交互问题的最直白朴素的做法就是直接传值,直接调用。

  适用这种做法的前提是你非常确认A对象的信息来源只可能是B对象,而且在未来这个前提也是不会产生任何改变。这个前提在某些场景下是成立的,例如你要取timestamp,那么只可能从NSDate中取。你要操作字符串,也只可能使用NSString。我这里说的是通常的环境,当然,针对NSDate或NSString这类对象做二次封装导致不直接依赖NSDate或NSString的场景也是有的,其本质依旧不变。

  这种做法的好处在于可以限制实现手段的多样性,在维护代码的时候工程师能够更加容易地去聚焦问题所在。

  存在限制不一定是坏的,灵活度高也不一定是好的。当一个工程中为了解决同一个问题而存在多种方案的

加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1MDD品牌三极管BC807数据手册
  2. 3.00 MB   |  次下载  |  免费
  3. 2MDD品牌三极管BC817数据手册
  4. 2.51 MB   |  次下载  |  免费
  5. 3MDD品牌三极管D882数据手册
  6. 3.49 MB  |  次下载  |  免费
  7. 4MDD品牌三极管MMBT2222A数据手册
  8. 3.26 MB  |  次下载  |  免费
  9. 5MDD品牌三极管MMBTA56数据手册
  10. 3.09 MB  |  次下载  |  免费
  11. 6MDD品牌三极管MMBTA92数据手册
  12. 2.32 MB  |  次下载  |  免费
  13. 7STM32G474 HRTIME PWM 丢波问题分析与解决
  14. 1.00 MB   |  次下载  |  3 积分
  15. 8新能源电动汽车高压线束的铜铝连接解决方案
  16. 2.71 MB   |  次下载  |  2 积分

本月

  1. 1爱华AIWA HS-J202维修手册
  2. 3.34 MB   |  37次下载  |  免费
  3. 2PC5502负载均流控制电路数据手册
  4. 1.63 MB   |  23次下载  |  免费
  5. 3NB-IoT芯片厂商的资料说明
  6. 0.31 MB   |  22次下载  |  1 积分
  7. 4H110主板CPU PWM芯片ISL95858HRZ-T核心供电电路图资料
  8. 0.63 MB   |  6次下载  |  1 积分
  9. 5UWB653Pro USB口测距通信定位模块规格书
  10. 838.47 KB  |  5次下载  |  免费
  11. 6技嘉H110主板IT8628E_BX IO电路图资料
  12. 2.61 MB   |  4次下载  |  1 积分
  13. 7苏泊尔DCL6907(即CHK-S007)单芯片电磁炉原理图资料
  14. 0.04 MB   |  4次下载  |  1 积分
  15. 8苏泊尔DCL6909(即CHK-S009)单芯片电磁炉原理图资料
  16. 0.08 MB   |  2次下载  |  1 积分

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935137次下载  |  10 积分
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420064次下载  |  10 积分
  5. 3Altium DXP2002下载入口
  6. 未知  |  233089次下载  |  10 积分
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191439次下载  |  10 积分
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183353次下载  |  10 积分
  11. 6labview8.5下载
  12. 未知  |  81602次下载  |  10 积分
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73822次下载  |  10 积分
  15. 8LabVIEW 8.6下载
  16. 未知  |  65991次下载  |  10 积分