31、系统可维护性是指维护人员理解、改正、改动和改进软件系统的难易程度,其评价指标不包括( )。
A、可理解性
B、可测试性
C、可修改性
D、一致性
参考答案:D
答案解析:
系统的可维护性可以定性的定义为:维护人员理解、改正、改动和改进这个软件的难易程度,其评价指标包括可理解性、可测试性和可修改性。
32、面向对象设计时包含的主要活动是( )。
A、认定对象、组织对象、描述对象间的相互作用、确定对象的操作
B、认定对象、定义属性、组织对象、确定对象的操作
C、识别类及对象、确定对象的操作、描述对象间的相互作用、识别关系
D、识别类及对象、定义属性、定义服务、识别关系、识别包
参考答案:D
答案解析:
考查关于面向对象的开发阶段:
33、在面向对象设计时,如果重用了包中的一个类,那么就要重用包中的所有类,这属于( )原则。
A、接口分离
B、开放-封闭
C、共同封闭
D、共同重用
参考答案:D
答案解析:
34、某电商系统在采用面向对象方法进行设计时,识别出网店、商品、购物车、订单买家、库存、支付(微信、支付宝)等类。其中,购物车与商品之间适合采用(1)关系,网店与商品之间适合采用(2)关系。
(1)
A、关联
B、依赖
C、组合
D、聚合
(2)
A、依赖
B、关联
C、组合
D、聚合
参考答案:D、C
答案解析:
本题考查UML类图的几种关系。
对于购物车和商品而言,网上商店的购物车要能够跟踪顾客所选的的商品,记录下所选商品,还要能随时更新,可以支付购买,能给顾客提供很大的方便。
购物车用于存放商品,购物车是整体,商品是部分,他们之间生命周期不同。属于聚合关系。
对于网店和商品而言,网点里面包含商品,属于整体和部分生命周期相同的情况,属于组合关系。
35、某软件系统限定:用户登录失败的次数不能超过3次。采用如所示的UML状态图对用户登录状态进行建模,假设活动状态是Logging in,那么当Valid Entry发生时,(1)。 其中,[tries<3]和tries+ +分别为(2)和(3)。
(1)
A、保持在Logging in状态
B、若[tries<3]为true,则Logged in变为下一个活动状态
C、Logged in立刻变为下一个活动状态
D、若tries=3为true,则Logging Denied变为下一个活动状态
(2)
A、状态
B、转换
C、监护条件
D、转换后效果
(3)
A、状态
B、转换
C、转换后效果
D、监护条件
参考答案:B、C、B
答案解析:
本题考查UML状态图的问题。
36、在某系统中,不同组(GROUP)访问数据的权限不同,每个用户(User)可以是一个或多个组中的成员,每个组包含零个或多个用户。现要求在用户和组之间设计映射,将用户和组之间的关系由映射进行维护,得到如下所示的类图。该设计采用(1)模式,用一个对象来封装系列的对象交互;使用户对象和组对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。该模式属于(2)模式,该模式适用: (3)。
(1)
A、状态(State)
B、策略(Strategy)
C、解释器(Interpreter)
D、中介者(Mediator)
(2)
A、创建型类
B、创建型对象
C、行为型对象
D、行为型类
(3)
A、需要使用一个算法的不同变体
B、有一个语言需要解释执行,并且可将句子表示为一个抽象语法树
C、一个对象的行为决定于其状态且必须在运行时刻根据状态改变行为
D、一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。
参考答案:D、C、D
答案解析:
本题考查设计模式的问题。
针对于题干和图示来看,不同组(GROUP)访问数据的权限不同,每个用户(User)可以是一个或多个组中的成员,每个组包含零个或多个用户。现要求在用户和组之间设计映射,将用户和组之间的关系由映射进行维护,在组和用户之间用UserGroupMapper实现两者的交互,两者之间不直接交互,用一个对象来封装系列的对象交互;使用户对象和组对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互,是典型关于中介者模式的描述和应用。
中介者模式属于行为型对象模型,可以适用于一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。
其中以下场景中A选项是对策略模式的描述,B选项是对解释器的描述,C选项是对状态模式的描述。
37、在设计某购物中心的收银软件系统时,要求能够支持在不同时期推出打折、返利、满减等不同促销活动,则适合采用( )模式。
A、策略(Strategy)
B、访问者(Visitor)
C、观察者(Observer)
D、中介者(Mediator)
参考答案:A
答案解析:
收银软件系统的计入规则有:打折、返利、满减三种不同的策略,每种策略之间封装起来,可以相互替换,使它们可以独立的变换,属于典型的策略模式。
38、Python语言的特点不包括( )。
A、跨平台、开源
B、编译型
C、支持面向对象程序设计
D、动态编程
参考答案:B
答案解析:
python语言的特点:跨平台、开源、简单易学、面向对象、可移植性、解释性、高级语言、可扩展性、丰富的库、动态编程等等。
综上所述B选项错误,python不是编译型语言,而是解释型语言。
39、在Python语言中,( )是一种可变的、有序的序列结构,其中元素可以重复。
A、元组(tuple)
B、字符串(str)
C、列表(list)
D、集合(set)
参考答案:C
答案解析:
40、以下Python语言的模块中,( )不支持深度学习模型。
A、TensorFlow
B、Matplotlib
C、PyTorch
D、Keras
参考答案:B
答案解析: