“软件设计”的版本间的差异

来自姬鸿昌的知识库
跳到导航 跳到搜索
第6行: 第6行:
 
软件设计的任务与活动
 
软件设计的任务与活动
 
[[文件:软件设计的任务与活动.png|无|缩略图|600x600像素]]
 
[[文件:软件设计的任务与活动.png|无|缩略图|600x600像素]]
 +
 +
=== 2)内聚和耦合 ===
 +
{| class="wikitable"
 +
!内聚类型
 +
!描述
 +
|-
 +
|功能内聚
 +
|最强的内聚,完成一个单一功能,各个部分协同工作,缺一不可
 +
|-
 +
|顺序内聚
 +
|各个处理元素都密切相关与同一功能且必须顺序执行,
 +
前一个功能元素的输出就是下一个功能元素的输入
 +
|-
 +
|通信内聚
 +
|所有处理元素集中在同一个数据结构的区域上,或者各处理使用相同
 +
的输入数据或产生相同的输出数据
 +
|-
 +
|过程内聚
 +
|模块内部的处理成分是相关的,而且这些处理必须以特定的次序执行
 +
|-
 +
|瞬时内聚(时间内聚)
 +
|把需要同时执行的动作组合在一起形成的模块
 +
|-
 +
|逻辑内聚
 +
|模块内执行若干个逻辑上相似的功能,
 +
通过参数确定该模块完成哪一个功能
 +
|-
 +
|偶然内聚(巧合内聚)
 +
|模块内的各处理元素之间没有任何联系
 +
|}

2022年9月24日 (六) 06:47的版本

https://www.bilibili.com/video/BV1hg411V7Bm/?p=77

1)软件设计原则

软件设计原则:抽象、模块化、信息隐蔽、模块独立

软件设计的任务与活动

软件设计的任务与活动.png

2)内聚和耦合

内聚类型 描述
功能内聚 最强的内聚,完成一个单一功能,各个部分协同工作,缺一不可
顺序内聚 各个处理元素都密切相关与同一功能且必须顺序执行,

前一个功能元素的输出就是下一个功能元素的输入

通信内聚 所有处理元素集中在同一个数据结构的区域上,或者各处理使用相同

的输入数据或产生相同的输出数据

过程内聚 模块内部的处理成分是相关的,而且这些处理必须以特定的次序执行
瞬时内聚(时间内聚) 把需要同时执行的动作组合在一起形成的模块
逻辑内聚 模块内执行若干个逻辑上相似的功能,

通过参数确定该模块完成哪一个功能

偶然内聚(巧合内聚) 模块内的各处理元素之间没有任何联系