周末一晃而过,今天也是22年2月的最后一天。希望3月能对我们多一点温柔,多一份幸运。让我爱的人能真正的开心吆。
4.3.3信息隐蔽和局部化
应用模块原理可以降低软件设计复杂度和减少软件开发成本。那么应当如何分解一个软件得到最佳的模块组合呢?信息隐蔽原理设计和确定模块原则应该使得包含在模块内的信息(过程和数据)对于不需要这些信息的模块是不能访问的。
信息隐蔽: 1、可以通过定义一组独立模型实现只交换必须交换的信息。
2、和局部化概念是密切相关,指把一些关系密切的软件元素物理地放得靠近局部化有助于信息隐蔽。
好处:测试及以后维护、维修变得简单,一个模块在修改期间由于疏忽而引入的错误传播到其他软件部分可能性极小。
4.3.4模块独立性及其度量
模块独立的概念是:模块化、抽象、信息隐蔽的局部化的直接结果,独立性是开发具有单一功能和其他模块没有太多交互作用的模块来达到的。
模块的独立性可以从两个方面啦度量:即模块之间的藕合和模块本身的内聚,耦合是指模块之间相互的度量,内聚则是指模块内部各个成分之间彼此结合的紧密程度的度量。
模块的耦合性有以下几种类型:
1、无直接耦合:之间不传递信息,没有直接的联系、互相独立、称为无直接耦合,但是一个软件系统中的所有模块不可能没有任何的关系。
2、数据耦合:如何两个模块有调用关系、相互传递的信息以参数的形式结合,传递的信息仅仅是简单的数据,则称数据耦合
3、标记耦合:传递数据只需要使用一部分数据元素,则称为标记耦合。
4、控制耦合:一个模块调用另外一个模块时传递的信息控制了该模块的功能