美文网首页
提示44-48 解耦

提示44-48 解耦

作者: 飞絮搅青冥 | 来源:发表于2022-02-21 22:44 被阅读0次

今天学习有关解耦的内容,先看提示:

提示四十四:解耦代码让改变更容易。

提示四十五:只管命令不要询问。

提示四十六:不要链式调用方法。

提示四十七:避免全局数据。

提示四十八:如果全局唯一非常重要,那么将它包装到API 中。

作者主要围绕五个提示的方面对解耦简单说了一下。我对于耦合也有一点点自己的想法。首先,我认为耦合是不可避免的,只要你涉及到了多个模块,或多或少都会存在耦合。我们平时开发过程中也喜欢耦合,因为实在是太方便了。写代码的时候根本不用动脑子,直接把对象拿过来用就好。可是高耦合有这样的好处为什么我们还是不喜欢它呢。我认为高度耦合的代码只是贪图一时写的简单,可是需要修改的时候就是头疼的时候了。就和提示四十四说的一样,只有修改的时候,我们才会感觉到耦合的痛点。到处都有引用,导致我们都不敢轻易修改代码。对于第二点,我的理解是类应该把他能提供的功能暴露出去,而不是把细节都告诉别人,让别人来操作。这一点就我想到以前forwardingorder就是这样,提供的都是自己拥有的能力,不会把实现交出去。至于第三点链式调用,我感觉作者是说中间环节太多就不可靠了。特别的是他最后强调了管道不是链式调用,函数组合还是很好用的。至于最后两个关于全局数据的点,我想到了我们系统中的AOP。AOP确实非常方便,但是他也是一个超级全局的代码,很容易被修改具体代码的人忘记。之前我改用户分公司的时候就忘记了我们还把用户的ID和他的公司放在了全局了AOP中,经历了莫名其妙的错误之后才终于找到问题所在。但是就是我开头说的不可能完全避免耦合一样,AOP同时也非常强大,到底应该怎么使用才能达到我们心中的均衡呢?

相关文章

  • 提示44-48 解耦

    今天学习有关解耦的内容,先看提示: 提示四十四:解耦代码让改变更容易。提示四十五:只管命令不要询问。提示四十六:不...

  • 解耦

    解耦 对于大型重构, 最有效的手段就是 解耦, 解耦的目的使实现代码高聚合、松耦合。 解耦为何如此...

  • 20171127-03问题整理

    总摘要: 解耦. 接口降低. 架构. 2017-11-27摘要: 解耦. 接口降低. 架构. 1.为什么说解耦的...

  • 解耦

    今天小董给大家做了一个关于DMTP的精彩演讲,DMTP种种优秀的特性令我们这些听众叹为观止。 为何DMTP具有如此...

  • 解耦

    利用配置文件实现解耦 存在一个接口B 有3个实现类B1、B2、B3 在A类方法中需要调用B类实现代码: 此情况下,...

  • 《程序员修炼之道》Tips摘录04

    第5章 弯曲,或折断 Bend,or Break 26. 解耦与得墨忒耳法则 提示36: Minimize Cou...

  • DDD 中的事件总线 (一)

    DDD 为什么需要event bus? 简单的说就是 解耦 ,无论是本地聚合间的解耦,还是微服务间的解耦. 没有e...

  • AFNetworking源码之AFAutoPurgingImag

    AFAutoPurgingImageCache图片缓存 通过2个protocol解耦,通过协议继承来解耦。协议相当...

  • iOS三方框架之 - AFNetworking的Https认证流

    对AFNetworking进行解耦AFNetworking解耦后可以分为以下几个模块:1. NSURLSessio...

  • 消息队列和RabbitMQ及AMQP协议介绍

    转自:二月_春风 文章地址 为什么要使用消息队列 异步处理 系统解耦解耦是消息中间队列解决的最本质问题。所谓解耦,...

网友评论

      本文标题:提示44-48 解耦

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