晴寸诡赤街灿痉桓怜佃唯缆臀
第一讲 软件体系结构概述 1. 单元测试
1、 软件体系结构权衡分析是
A:ATM方法
B:ATAM方法
C:SAAM方法
D:QAW方法
答案: ATAM方法
2、 下面哪个不属于软件体系结构形式化描述方法
A:UML语言描述
B:xADL方法
C:C2方法
D:Wright方法
答案: UML语言描述
3、 常用的软件体系结构建模工具是
A:JAVA开发工具
B:Visual Studio 2019开发工具
C:ArchStudio开发工具
D:UML开发工具
答案: ArchStudio开发工具
4、 下面哪个不是软件体系结构风格?
A:云体系结构风格
B:分层风格
C:数据分享风格
D:客户端/服务器风格
答案: 客户端/服务器风格
5、 下面哪个不属于软件体系结构研究的范畴?
A:软件体系评价方法
B:软件体系结构风格
C:软件体系结构描述
D:软件体系用户需求
答案: 软件体系用户需求
6、 下面哪个不是软件体系结构风格?
A:解释器风格
B:管道-过滤器风格
C:黑板风格
D:MVC三层风格
答案: MVC三层风格
7、 下面哪个属于软件体系结构研究范围?
A:用户需求建模
B:用户代码建模
C:软件测试策略
D:软件部署
答案: 用户代码建模
第二讲 设计模式 第二单元测验
1、 设计模式具有( )的优点。
A:提高系统性能
B:降低软件规模和复杂度
C:减少代码开发工作量
D:提升软件设计的质量
答案: 提升软件设计的质量
2、 在面向对象软件的开发过程中,采用设计模式( )
A:可以减少在设计和实现过程中需要创建的实例对象的数量。
B:可以保证程序的运行速度达到最优值
C:可以复用相似问题的相同解决方案
D:允许在非面向对象程序设计语言中使用面向对象的概念
答案: 可以复用相似问题的相同解决方案
3、 ( )是行为型设计模式
A:组合模式,适配器模式,代理模式
B:观察者模式,职责链模式,策略模式
C:原型模式,建造者模式,单例模式
D:迭代器模式,命令模式,桥接模式
答案: 观察者模式,职责链模式,策略模式
4、 关于单一职责模式,叙述错误的是( )
A:一个类只负责一个功能领域中的相应职责
B:就一个类而言,应该有且仅有一个引起它变化的原因
C:一个类承担的职责越多,越容易复用,被复用的可能性越大
D:当一个类承担的职责过多时,需要将职责进行分离,将不同的职责封装在不同的类中
答案: 一个类承担的职责越多,越容易复用,被复用的可能性越大
5、 以下关于面向对象设计的叙述中,错误的是( )
A:高层模块不应该依赖于底层模块
B:抽象不应该依赖于细节
C:细节可以依赖于抽象
D:高层模块无法不依赖于底层模块
答案: 高层模块无法不依赖于底层模块
6、 在系统设计中应用迪米特法则,叙述错误的是( )
A:在类的划分上,应该尽量创建松耦合的类,类的耦合越低,复用越容易
B:如果两个类之间不必彼此直接通信,那么这两个类就不应该发生直接的相互作用
C:在对其他类的引用上,一个对象对其他对象的引用应该降到最低
D:在类的设计上,只要有可能,一个类型应该尽量设计成抽象类或接口,且成员变量和成员函数的访问权限最好设置为公开的(public)
答案: 在类的设计上,只要有可能,一个类型应该尽量设计成抽象类或接口,且成员变量和成员函数的访问权限最好设置为公开的(public)
7、 设计模式按范围可以分为类模式和对象模式。
A:正确
B:错误
答案: 正确
8、 代理模式属于行为型模式。
A:正确
B:错误
答案: 错误
9、 单例模式属于结构型模式
A:正确
B:错误
答案: 错误
10、 原型模式属于创建型模式。
A:正确
B:错误
答案: 正确
11、 命令模式属于结构型模式。
A:正确
B:错误
答案: 错误
第三讲 简单工厂模式和工厂模式 测验3
1、 在简单工厂模式中,如果需要增加新的具体产品,通常需要修改( )的源代码。
A:抽象产品类
B:其他具体产品类
C:工厂类
D:客户类
答案: 工厂类
2、 以下关于简单工厂模式叙述错误的是( )。
A:简单工厂模式可以根据参数的不同返回不同的产品类的实例。
B:简单工厂模式专门定义了一个类来负责创建其他类的实例,被创建的实力通常都具有共同的父类。
C:简单工厂模式可以减少系统中的类的个数,简化系统的设计,使得系统更容易理解。
D:系统的扩展困难,在添加新的产品时,需要修改工厂的业务逻辑,违背了开闭原则。
答案: 简单工厂模式可以减少系统中的类的个数,简化系统的设计,使得系统更容易理解。
3、 不同品牌的手机应该由不同的公司制造,例如:Monorola公司生产Motorola手机,Nokia公司生产Nokia手机。该场景蕴含了( )模式。
A:简单工厂模式
B:工厂方法模式
C:抽象工厂模式
D:建造者模式
答案: 工厂方法模式
4、 以下关于工程方法模式的叙述错误的是( )。
A:在工厂方法模式中引入了抽象工厂类,而具体产品的创建延迟到具体工厂中实现。
B:使用工程方法模式添加新的产品对象很容易,无须对原有系统进行修改,符合开闭原则。
C:工程方法模式存在的问题是在添加新差评你时,需要编写新的具体产品类,而且要提供与之对应的具体工厂类,随着类的个数增加,会给系统带来一些额外的开销。
D:工程方法模式是所有形式的工程模式中最为抽象和最具一般性的一种形态,工程方法模式退化后可以演变为抽象工厂模式。
答案: 工程方法模式是所有形式的工程模式中最为抽象和最具一般性的一种形态,工程方法模式退化后可以演变为抽象工厂模式。
5、 在.NET开发环境中,程序集的配置参数通常保存在( )文件中。
A:”app.config”文件中。
B:”web.confi”g文件中。
C:与程序集同名,扩展名为config的文件中。
D:系统注册表中。
答案: 与程序集同名,扩展名为config的文件中。
6、 在程序集的配置文件中添加配置参数Name=”张三”,下面哪个是不正确的。
A:
B: 张三
C: 张三
D: 张三
答案: 张三
7、 工厂方法模式符合开闭原则。
A:正确
B:错误
答案: 正确
8、 简单工厂模式符合开闭原则。
A:正确
B:错误
答案: 错误
9、 简单工厂模式中具体工厂类与抽象产品类可以合并。
A:正确
B:错误
答案: 正确
10、 简单工厂模式是工厂模式的简化。
A:正确
B:错误
答案: 正确
11、 使用工厂方法模式提高了代码效率,模型扩展更容易。
A:正确
B:错误
答案: 错误
12、 工厂方法模式引入抽象产品和抽象工厂,在客户端代码中均使用抽象层编程,减低了系统的理解难度。
A:正确
B:错误
答案: 错误
第四讲 抽象工厂模式 测验4
1、 某公司要开发一个图标显示系统,在该系统中,曲线图生成器可以创建曲线图、曲线图图例和曲线图数据标签,柱状图生成器可创建柱状图、柱状图图例和柱状图数据标签。用户要求可以很方便地增加新类型的图形,系统需具有较好的可扩展能力。针对这种需求,公司采用( )最为恰当。
A:桥接模式
B:简单工厂模式
C:工厂模式
D:抽象工厂模式
答案: 抽象工厂模式
2、 以下关于抽象工厂模式的叙述错误的是( )。
A:抽象工厂模式提供了一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类。
B:当系统中有多于一个产品族时,可以考虑使用抽象工厂模式
C:当一个工厂等级结构可以创建出分属于不同产品等级结构的一个产品族中的所有对象时,抽象工厂模式比工厂模式更为简单,高效
D:抽象工厂模式符合开闭原则,增加新产品族和新的产品等级结构都很方便。
答案: 抽象工厂模式符合开闭原则,增加新产品族和新的产品等级结构都很方便。
3、 下列关于抽象工厂模式中的产品族和产品等级结构的叙述,错误的是( )。
A:产品等级结构是从不同的产品族中任意选取产品组成的层次结构。
B:产品族是指由位于不同产品等级结构、功能相关的产品组成的家族
C:抽象工厂是指一个工厂等级结构可以创建出分属于不同产品等级结构的一个产品族中的所有对象。
D:工厂方法模式对应唯一一个产品等级结构,而抽象工厂模式则需要对应多个产品等级结构。
答案: 产品等级结构是从不同的产品族中任意选取产品组成的层次结构。
4、 工厂模式是抽象工厂模式的特殊形式。
A:正确
B:错误
答案: 正确
5、 抽象工厂模式是工厂模式的一般形式。
A:正确
B:错误
答案: 正确
6、 抽象工厂模式是工厂模式的特殊形式。
A:正确
B:错误
答案: 错误
7、 工厂模式是抽象工厂模式的一般形式。
A:正确
B:错误
答案: 错误
8、 工厂模式和抽象工厂模式都符合开闭原则。
A:正确
B:错误
答案: 错误
9、 工厂模式和抽象工厂模式都不符合开闭原则。
A:正确
B:错误
答案: 错误
10、 抽象工厂模式在增加产品族时符合开闭原则。
A:正确
B:错误
答案: 正确
11、 抽象工厂模式在增加产品等级结构时符合开闭原则。
A:正确
B:错误
答案: 错误
第五讲 建造者模式 测验
1、 以下关于建造者模式的叙述,错误的是( )。
A:建造者模式将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
B:建造者模式允许用户只通过指定复杂对象的类型和内容就可以创建它们,而不需要知道内部的具体构建细节。
C:当需要创建的产品对象有复杂的内部结构时,可以考虑使用建造者模式。
D:在建造者模式中,各个具体的建造者相互之间通常具有较强的依赖关系,可通过指挥者类组成一个完整的产品对象返回给客户。
答案: 在建造者模式中,各个具体的建造者相互之间通常具有较强的依赖关系,可通过指挥者类组成一个完整的产品对象返回给客户。
2、 当需要创建的产品具有复杂的内部结构时,为了逐步构造完整的对象,并使得对象的创建更具灵活性,可以使用( )。
A:抽象工厂模式
B:简单工厂模式
C:工厂模式
D:建造者模式
答案: 建造者模式
3、 关于建造者模式中的Director类的描述,错误的是( )。
A:Director类隔离了客户类及创建过程。
B:在建造者模式中,客户类指导Director类去生成对象或者合成一些类,并逐步构造一个复杂对象。
C:Director类构建一个抽象建造者Builder子类的对象。
D:Director与抽象工厂模式中的工厂类类似,负责返回一个产品族中的所有产品。
答案: 在建造者模式中,客户类指导Director类去生成对象或者合成一些类,并逐步构造一个复杂对象。
4、 在建造者模式中,为了使客户端源代码在模型扩展时不做任何修改,需要使用( )技术来动态创建具体的建造者对象。
A:对象序列化技术
B:对象反射技术
C:对象实例化技术
D:对象抽象技术
答案: 对象反射技术
5、 建造者模式符合开闭原则。
A:正确
B:错误
答案: 正确
6、 建造者模式不符合开闭原则。
A:正确
B:错误
答案: 错误
7、 在建造者模式中,指挥者类Director作用类似于简单工厂模式中的工厂对象。
A:正确
B:错误
答案: 正确
8、 在建造者模式中,指挥者类Director作用类似于工厂模式中的抽象工厂对象。
A:正确
B:错误
答案: 错误
9、 建造者模式中,指挥者类Director隔离了客户端与复杂对象的创建过程。
A:正确
B:错误
答案: 正确
10、 建造者模式中,客户端需要了解复杂对象的创建过程。
A:正确
B:错误
答案: 错误
上方为免费预览版答案,如需完整答案,请点击下方红字购买:
为了方便下次阅读,建议在浏览器添加书签收藏本网页
添加书签方法:
1.电脑按键盘的Ctrl键+D键即可收藏本网页
2.手机浏览器可以添加书签收藏本网页
龄闹螺呵亨绷幂赡端太脊核谓