美文网首页谈谈设计
高内聚,低耦合

高内聚,低耦合

作者: yezi | 来源:发表于2017-09-24 16:50 被阅读31次

面向对象思想无疑是目前最为流行的软件设计思想,它的强大之处在于可以将现实比较直观的投射到代码中,这个特点非常符合人类的思考方式,很容易建立在软件中建立起现实世界的模型。

然而,一千个读者就有一千个哈姆莱特,对于同一个问题,不同的开发者可能会得出完全不同的设计。有的设计轻盈,灵活,充满美感,让人看了赏心悦目,而有的则笨重,丑陋, 难以维护。

对于一个设计方案,如何评判它的好坏呢?这并没有统一的标准,我想,一个设计是否达到了“高内聚,低耦合”是一个重要的指标。

何为“高内聚,低耦合”

简单来说,所谓高内聚,就是每个类/模块都实现一个明确的功能,不要这个事情做一点那个事情做一点,成一个大杂烩,这主要是对一个类/模块的自身的要求。

所谓低耦合,就是不同的类之间,不要知道的太多,这主要是对类/模块相关关联的要求。

“高内聚,低耦合”的作用

为何要达到“高内聚,低耦合”呢,实际上这是人脑的思考方式决定的。

一般而言,一个系统如果达到了一定的复杂程度,人脑就难以理解了。面对对于这种情况,人们想到了分而治之的方法,也就是将复杂系统拆分成易于理解的小的局部的系统,这样,人们可以首先理解每个小的系统,并将小的系统抽象出来,以此为基础,理解大的系统。

高内聚的特性可以使得我们拆出来的子系统,都是功能明确,易于理解的,而低耦合则确保了各个系统之间没多大的关联性,使我们可以集中思想关注在某一个子系统上面。

可见“高内聚,低耦合”是一个易于理解和维护的软件系统所必备的特点。

如何达成“高内聚,低耦合”

这是一个有趣的话题,我想并没有达成对于这一目标的标准流程,后面的文章,我们会逐步讨论这个问题。

相关文章

  • [JAVA] Java面向对象三大特征:封装、继承、多态

    高内聚和低耦合 面向对象的最终目的是要构建强健、安全、高效的项目,也就是要实现项目的高内聚和低耦合: 高内聚:把该...

  • 测试开发学习Day03

    面向对象原则:高内聚,低耦合。多聚合,少继承。 【高内聚、低耦合】内聚:每个模块尽可能独立完成自己的功能,不依赖于...

  • diango创建的一个简单的基本流程

    高内聚,低耦合 高内聚:一个模块内部一个功能。 低耦合:每个模块各司其职,尽量零关联。 创建django项目 1、...

  • 2021-08-31 IO流(装饰和继承的区别)

    继承结构组合结构高内聚,低耦合

  • 高内聚,低耦合

    概念 耦合性: 也称块间联系。指的软件系统结构中各模块间相互凉席紧密程度的一种度量。模块之间联系越紧密,其耦合性就...

  • 高内聚低耦合

    内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事。它描述的是模块内的功能联系; 耦合是软件结构...

  • 高内聚,低耦合

    面向对象思想无疑是目前最为流行的软件设计思想,它的强大之处在于可以将现实比较直观的投射到代码中,这个特点非常符合人...

  • 高内聚,低耦合

    "高内聚,低耦合",听过很多次,但是没有切身体会是不会真正明白的。我的深刻体会是在做一个公司的项目的时候,例如:a...

  • 高内聚、低耦合

    文章转自:http://www.cnblogs.com/robnetcn/archive/2012/04/15/2...

  • 高内聚低耦合

    高内聚: 高内聚是另外一个评判软件设计质量的标准。内聚更为专业的说法叫做功能内聚,是对系统中元素职责的相关性和集中...

网友评论

    本文标题:高内聚,低耦合

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