码迷,mamicode.com
首页 > 其他好文 > 详细

作业六

时间:2016-04-23 01:34:20      阅读:232      评论:0      收藏:0      [点我收藏+]

标签:

5.2为每种类型的模块内聚举一个例子
答:内聚标志着一个模块内各个元素之间彼此结合的紧密程度,它是信息隐藏和局部化概念的自然扩展。 低内聚:
1. 偶然内聚:如果一个模块完成一组任务,这些任务彼此间即使有关系,关系也是很松散的。这就叫做
偶然内聚
偶然内聚的例子:在模块T 中有A,B,C三条语句,至少从表面上看来这三条语句没什么联系,只是因为D,E,F,G中都有这三条语句,为了节省空间才把这三条语句作为一个模板放在一起。
2. 逻辑内聚:如果一个模块完成的任务在逻辑上属于相同或相似的一类(例如一个模块产生各种类型的全
部输出),称为逻辑内聚
逻辑内聚的例子:某一个模块将打印,年,月,日,具体打印什么,将由传入的控制标志所决定。 C. 时间内聚:一个模块包含的任务必须在同一段时间内执行(例如,模块完成各种初始化工作),称为时
间内聚
时间内聚的例子:将多个变量的初始化放在同一个模块中实现。 中内聚:
1. 过程内聚:如果一个模块内的处理元素是相关的,而且必须以特定次序执行,称为过程内聚 过程内聚的例子:一个子程序,将开始读取学生的学号,然后是姓名,最后将读取分数,是由于特定的顺序而将这些操作组合在一起的
2. 通讯内聚:如果模块中所有的元素都使用同一个输入数据和(或)产生同一个输出数据,则称为通讯
内聚
通讯内聚的例子:有一个子程序,它将打印实验报告,并且在完成后重新初始化传进来的实验数据。这个程序具有通讯内聚性。因为这两个操作由于使用同一个数据源联系在了一起。 高内聚:
1. 顺序内聚:如果一个模块内的处理元素和同一个功能密切相关,而且这些处理必须顺序执行(通常一
个处理元素的输出数据作为下一个处理元素的输入数据),则称为顺序内聚。
顺序内聚的例子:有一个子程序,通过给出的生日,先计算出年龄。再根据年龄算出退休的时间,则这个程序具有顺序内聚性。
2. 功能内聚:如果模块内所有的元素属于一个整体完成一个单一的功能,则成为功能内聚。 功能内聚的例子:一个程序中所有的操作都是为了算出一个人的年龄

作业六

标签:

原文地址:http://www.cnblogs.com/yanyong45/p/5423226.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!