admin 管理员组文章数量: 1086866
软件设计模块之间7种耦合关系
一般来说,模块之间的耦合有七种类型:
1、根据耦合性从低到高为非直接耦合、数据耦合、标记耦合、控制耦合、外部耦合、公共耦合和内容耦合。
2、两个模块之间没有直接关系, 它们之间的联系完全是通过主模块的控制和调用实现的,这种耦合为 非直接耦合;
3、如果一个模块访问另一个模块时,彼此之间是通过数据参数(不是控制参数、公共数据结构或外部变量)来交换输入、输出信息的,则称这种耦合为数据耦合;
4、如果一组模块通过数据结构本身传递,则称这种耦合为标记耦合;
5、如果一个模块调用另一个模块时,传递的是控制变量(如开关、标志等),被调模块通过该控制变量的值有选择地执行块内某一功能,这种耦合为控制耦合;
6、一组模块都访问同一全局简单变量,而且不通过参数表传递该全局变量的信息,则称之为外部耦合;
7、若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合;
8、若一个模块直接访问另一个模块的内部数据、一个模块不通过正常入口转到另一个模块内部、两个模块有一部分程序代码重叠或者一个模块有多个入口,上述几个情形之一发生则两个模块之间就发生了内容耦合。
以下是模块7种耦合度,写程序提倡模块间耦合低越低越好。通俗点来说,也就是模块之间越不相关越好。
数据耦合
sum(int a,int b)
{int c;c=a+b;return(c);
}
main()
{int x,y;printf("x+y=%d",sum(x,y));
}
主函数与sum函数之间即为数据耦合关系
控制耦合
void output(flag)
{if (flag) printf("OK!");else printf("NO!");
}
main()
{int flag;output(flag);
}
主函数与output函数之间即为控制耦合关系.
内容耦合
如goto
语句
公共环境耦合
如FORTRAN语言中使用的common
语句
本文标签: 软件设计模块之间7种耦合关系
版权声明:本文标题:软件设计模块之间7种耦合关系 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1697154416a262338.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论