摘要:对于【软件设计师】软考考试而言,试题无疑是最重要的学习资料之一。在软考备考过程中,吃透试题、掌握试题所考知识点、熟悉试题的出题思路,对我们提升分数的效果是最明显的,通过对试题的反复练习,还可以查漏补缺。今天,给大家带来【2021年11月软件设计师上午题】部分试题的详解,一起来看看吧~



1、在某系统中,不同组(Group)访问数据的权限不同,每个用户(User)可以是一个或多个组中的成员,每个组包含零个或多个用户。现要求在用户和组之间设计映射,将用户和组之间的关系由映射进行维护,得到如下所示的类图。该设计采用(44) 模式,用一个对象来封装系列的对象交互; 使用户对象和组对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。该模式属于(45)模式,该模式适用于: (46)。
A、 状态(State)
B、 策略(Strategy)
C、 解释器(Interpreter)
D、 中介者(Mediator)

答案:D
答题解析:

中介者模式用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。

中介者模式属于行为型对象模式,适应于下列情况:

一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。

一个对象引用其他很多对象并且直接与这些对象通信,导致难以复用该对象。

想定制一个分布在多个类中的行为,而又不想生成太多的子类。



2、在某系统中,不同组(Group)访问数据的权限不同,每个用户(User)可以是一个或多个组中的成员,每个组包含零个或多个用户。现要求在用户和组之间设计映射,将用户和组之间的关系由映射进行维护,得到如下所示的类图。该设计采用(44) 模式,用一个对象来封装系列的对象交互; 使用户对象和组对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。该模式属于(45)模式,该模式适用于: (46)。
A、 创建型类
B、 创建型对象
C、 行为型对象
D、 行为型类

答案:C
答题解析:

中介者模式用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。

中介者模式属于行为型对象模式,适应于下列情况:

一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。

一个对象引用其他很多对象并且直接与这些对象通信,导致难以复用该对象。

想定制一个分布在多个类中的行为,而又不想生成太多的子类。



3、在某系统中,不同组(Group)访问数据的权限不同,每个用户(User)可以是一个或多个组中的成员,每个组包含零个或多个用户。现要求在用户和组之间设计映射,将用户和组之间的关系由映射进行维护,得到如下所示的类图。该设计采用(44) 模式,用一个对象来封装系列的对象交互; 使用户对象和组对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。该模式属于(45)模式,该模式适用于: (46)。
A、 需要使用一个算法的不同变体
B、 有一个语言需要解释执行,并且可将句子表示为一个抽象语法树
C、 一个对象的行为决定于其状态且必须在运行时刻根据状态改变行为
D、 一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。

答案:D
答题解析:中介者模式用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。

中介者模式属于行为型对象模式,适应于下列情况:

一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。

一个对象引用其他很多对象并且直接与这些对象通信,导致难以复用该对象。

想定制一个分布在多个类中的行为,而又不想生成太多的子类。



查看完整试题>>>