程序开发之——低耦合高内聚
2017-05-04 10:11
190 查看
内聚概念
内聚性,又称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
内聚性是对一个模块内部各个组成元素之间相互结合的紧密程度的度量指标。模块中组成元素结合的越紧密,模块的内聚性就越高,模块的独立性也就越高。理想的内聚性要求模块的功能应明确、单一,即一个模块只做一件事情。模块的内聚性和耦合性是两个相互对立且又密切相关的概念。
所谓高内聚是指一个软件模块是由相关性很强的代码组成,只负责一项任务,也就是常说的单一责任原则。
耦合概念
耦合性也叫块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块之间越独立则越差,模块间耦合的高低取决于模块间接口的复杂性,调用的方式以及传递的信息。 形象的说,就是要将代码写的和电脑一样,主类就是电脑的主机箱,当程序需要实现什么功能的时候只需要加其他的类引入接口,就像电脑上的usb接口。
对于低耦合,粗浅的理解是:一个完整的系统,模块与模块之间,尽可能的使其独立存在。也就是说,让每个模块,尽可能的独立完成某个特定的子功能。模块与模块之间的接口,尽量的少而简单。如果某两个模块间的关系比较复杂的话,最好首先考虑进一步的模块划分。这样有利于修改和组合。
在程序开发中,尽量做到低耦合高内聚,这样程序的维护成本以及可读性也会大大增强。
目前比较推崇的应用开发模式就是高内聚低耦合+MVP的设计模式。
内聚性,又称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
内聚性是对一个模块内部各个组成元素之间相互结合的紧密程度的度量指标。模块中组成元素结合的越紧密,模块的内聚性就越高,模块的独立性也就越高。理想的内聚性要求模块的功能应明确、单一,即一个模块只做一件事情。模块的内聚性和耦合性是两个相互对立且又密切相关的概念。
所谓高内聚是指一个软件模块是由相关性很强的代码组成,只负责一项任务,也就是常说的单一责任原则。
耦合概念
耦合性也叫块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块之间越独立则越差,模块间耦合的高低取决于模块间接口的复杂性,调用的方式以及传递的信息。 形象的说,就是要将代码写的和电脑一样,主类就是电脑的主机箱,当程序需要实现什么功能的时候只需要加其他的类引入接口,就像电脑上的usb接口。
对于低耦合,粗浅的理解是:一个完整的系统,模块与模块之间,尽可能的使其独立存在。也就是说,让每个模块,尽可能的独立完成某个特定的子功能。模块与模块之间的接口,尽量的少而简单。如果某两个模块间的关系比较复杂的话,最好首先考虑进一步的模块划分。这样有利于修改和组合。
在程序开发中,尽量做到低耦合高内聚,这样程序的维护成本以及可读性也会大大增强。
目前比较推崇的应用开发模式就是高内聚低耦合+MVP的设计模式。
相关文章推荐
- 关于 iOS 开发中,代码如何做到高内聚,低耦合,MVC 三层分离的小感悟
- [转载]软件开发中的问题:什么是高内聚、低耦合?
- [ZT]一个优秀软件开发人员的必修课:高内聚低耦合
- 开发中,理解高内聚、低耦合
- Android 程序工程的高内聚,低耦合
- [转载]软件开发中的问题:什么是高内聚、低耦合?
- 程序代码模块的内聚与耦合和测试的关系
- 如何在Ubuntu中使用Eclipse + CDT开发C/C++程序
- 内聚和耦合需要共同点
- swift语言ios开发 第一个程序hello world!
- 面向对象技巧之高内聚,低耦合!!!
- 007 - 微信小程序开发之弹出菜单
- iOS 11开发教程(三)运行第一个iOS 11程序
- VS开发Linux程序(VisualGDB)
- 开发安装程序
- re:积累3年,10天看懂程序开发(特别是在MS下的程序开发),这样的人公司可以给多少?
- 程序开发人员转型做SEO优化的三个优势
- 微信小程序开发-保存服务端sessionid的方法
- iMX6Q调试篇-Linux程序开发使用gdb调试
- 小程序开发管理平台哪个实用