美文网首页
软考-高内聚低耦合(下)

软考-高内聚低耦合(下)

作者: zhongcx | 来源:发表于2020-05-25 16:49 被阅读0次

答案

1.1 - 1.1:B
2.1 - 3.4:B A D C
3.1 - 3.1:A

知识点分析

《模块化设计》
模块化设计的原则应该是尽量考虑高内聚、低耦合。
1)模块独立。模块的独立性原则表现在模块完成独立的功能,与其他模块的联系应该尽可能简单,各个模块具有相对的独立性。
2)模块的规模要适当。模块的规模不能太大,也不能太小。如果模块的功能太强,可读性就会较差;如果模块的功能太弱,就会很多的接口。读者需要通过较多的程序设计来进行经验的积累。
3)分解模块时要注意层次。在进行多层次任务分解时,要注意对问题进行抽象化。在分解初期,可以只考虑大的模块,在中期再逐步进行细化,分解成较小的模块进行设计。

《内聚》
内聚是一个模块内部各成分之间相关联程度的度量。内聚按强度从低到高有以下几种类型:
1)偶然内聚。如果一个模块的各成分之间毫无关系,则称为偶然内聚,也就是说模块完成一组任务,这些任务之间的关系松散,实际上没有什么联系。
2)逻辑内聚。几个逻辑上相关的功能被放在同一模块中,则称为逻辑内聚,如一个模块读取各种不同类型外设的输入。尽管逻辑内聚比偶然内聚合理一些,但逻辑内聚的模块各成分在功能上并无关系,即使局部功能的修改有时也会影响全局,因此这类模块的修改也比较困难。
3)时间内聚。如果一个模块完成的功能必须在同一时间内执行(如系统初始化),但这些功能只是因为时间因素联系在一起,则称为时间内聚。
4)通信内聚。如果一个模块的所有成分都操作同一数据集或生成同一数据集,则称为通信内聚。
5)顺序内聚。如果一个模块的各个成分和同一个功能密切相关,而且一个成分的输出作为另一个成分的输入,则称为顺序内聚。
6)过程内聚。构件或操作的组合方式是,允许在调用前面的构件或操作之后,马上调用后面的构件或操作,即使两者之间没有数据进行传递。
模块完成多个需要按一定的步骤一次完成的功能(过程相关—控制耦合)。例如,在用程序流程图设计模块时,若将程序流程图中的一部分划出各自组成的模块,便形成过程内聚。
7)信息内聚。模块完成多个功能,各个功能都在同一数据结构上操作,每一项功能有一个唯一的入口点。这个模块将根据不同的要求,确定该模块执行哪一个功能。由于这个模块的所有功能都是基于同一个数据结构(符号表),因此,它是一个信息内聚的模块。
8)功能内聚。模块的所有成分对于完成单一的功能都是必须的,则称为功能内聚。

《耦合》
1)数据耦合:如果一个模块访问另一个模块时,彼此之间是通过数据参数(不是控制参数、公共数据结构或外部变量)来交换输入、输出信息的,则称这种耦合为数据耦合。
2)印记耦合/标记耦合:如果一组模块通过参数传递记录信息,就是标记耦合。
3)控制耦合:如果一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能,就是控制耦合。
4)内容耦合:如果发生下列情形,两个模块之间就发生了内容耦合。
一个模块直接访问另一个模块的内部数据;
一个模块不通过正常入口转到另一模块内部;
两个模块有一部分程序代码重叠(只可能出现在汇编语言中);
一个模块有多个入口。

image.png

相关文章

  • 软考-高内聚低耦合(下)

    答案 1.1 - 1.1:B2.1 - 3.4:B A D C3.1 - 3.1:A 知识点分析 《模块化设计》模...

  • 软考-高内聚低耦合(上)

    1.模块化设计 1.1:以下关于模块化设计的叙述中,不正确的是_______。A.尽量考虑高内聚、低耦合,保持模块...

  • [JAVA] Java面向对象三大特征:封装、继承、多态

    高内聚和低耦合 面向对象的最终目的是要构建强健、安全、高效的项目,也就是要实现项目的高内聚和低耦合: 高内聚:把该...

  • 测试开发学习Day03

    面向对象原则:高内聚,低耦合。多聚合,少继承。 【高内聚、低耦合】内聚:每个模块尽可能独立完成自己的功能,不依赖于...

  • diango创建的一个简单的基本流程

    高内聚,低耦合 高内聚:一个模块内部一个功能。 低耦合:每个模块各司其职,尽量零关联。 创建django项目 1、...

  • 2021-08-31 IO流(装饰和继承的区别)

    继承结构组合结构高内聚,低耦合

  • 高内聚,低耦合

    概念 耦合性: 也称块间联系。指的软件系统结构中各模块间相互凉席紧密程度的一种度量。模块之间联系越紧密,其耦合性就...

  • 高内聚低耦合

    内聚是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事。它描述的是模块内的功能联系; 耦合是软件结构...

  • 高内聚,低耦合

    面向对象思想无疑是目前最为流行的软件设计思想,它的强大之处在于可以将现实比较直观的投射到代码中,这个特点非常符合人...

  • 高内聚,低耦合

    "高内聚,低耦合",听过很多次,但是没有切身体会是不会真正明白的。我的深刻体会是在做一个公司的项目的时候,例如:a...

网友评论

      本文标题:软考-高内聚低耦合(下)

      本文链接:https://www.haomeiwen.com/subject/kvuyahtx.html