资源描述
软件体系结构-设计模式练习题1
1.面向对象分析和设计中(1)是指一个模块在扩展性方面应该是开放,而在更改性方面应该是封闭;而(2)是指子类应该能够替换父类并出现在父类能够出现任何地方。
(1) A.开闭标准 B.替换标准 C.依靠标准 D.单一职责标准
(2) A.开闭标准 B.替换标准 C.依靠标准 D.单一职责标准
2.(3)限制了创建类实例数量,而(4)将一个类接口转换成用户期望另外一个接口,使得原本因为接口不兼容而不能一起工作那些类能够一起工作。
(3) A.命令模式(Command)B.适配器模式(Adapter)C.策略模式(Strategy) D.单例模式(Singleton)
(4) A.命令模式(Command) B.适配器模式(Adapter) C.策略模式(Strategy) D.单例模式(Singleton)
3. (5)设计模式许可一个对象在其内部状态改变时改变它行为。下图为这种设计模式类图,已知类 State 为抽象类,则类(6)实例代表了Context 对象状态。
(5) A.单件(Singleton) B.桥接(Bridge) C.组合(Composite) D.状态(State)
(6) A. Context B. ConcreteStateA C. Handle D. State
4.某企业欲开发一门户网站,将企业各个分企业及办事处信息进行整合。现决定采取Composite设计模式来实现企业组织结构关系,并设计了以下图所表示UML类图。图中和Composite模式中“Component”角色相对应类是 (7) ,和“Composite”角色相对应类是 (8) 。
(7) A. Company B. FinanceDepartment C. HRDepartment D. ConcreteCompany
(8) A. Company B. FinanceDepartment C. HRDepartment D. ConcreteCompany
5.某软件企业正在设计一个通用嵌入式数据处理平台,需要支持多个数据处理芯片之间数据传输和交换。该平台关键功效之一要求能够屏蔽芯片之间数据交互,使其耦合松散,而且能够独立改变芯片之间交互过程。针对上述需求,采取 (9)最为适宜。
(9) A. 抽象工厂模式 B. 策略模式 C. 中介者模式D. 状态模式
6.某软件企业正在设计一个图像处理软件,该软件需要支持用户在图像处理中撤销和重做等动作,为了实现该功效,采取 (10)最为适宜。
(10) A. 单例模式B. 命令模式 C. 访问者模式 D. 适配器模式
7.某互联网企业正在设计一套网络聊天系统,为了限制用户在使用该系统时发表不合适言论,需要对聊天内容进行特定敏感词过滤。针对上述功效需求,采取 (11)能够灵活配置敏感词过滤过程。
(11) A. 责任链模式 B. 工厂模式 C. 组合模式 D. 装饰模式
8.某软件企业欲开发一个Windows平台上公告板系统。在明确用户需求后,该企业架构师决定采取Command模式实现该系统界面显示部分,并设计UML类图以下图所表示。图中和Command模式中“Invoker”角色相对应类是 (12) ,和“ConcreteCommand”角色相对应类是 (13) 。
(13) A. Command B. MenuItem C. Open D. BulktinBoardScreen
(14) A. Command B. MenuItem C. Open D. BulktinBoardScreen
9.某软件企业基于面向对象技术开发了一套图形界面显示构件库VisualComponent。在使用该库构建某图形界面时,用户要求为界面定制部分特效显示效果,如带滚动条、能够显示艺术字体透明窗体等。针对这种需求,企业采取 (15)最为灵活。
(15) A. 桥接模式 B. 命令模式 C. 组合模式 D. 装饰模式
10.某软件企业承接了为某工作流语言开发解释器工作。该工作流语言由多个活动节点组成,含有类XML语法结构。用户要求解释器工作时,对每个活动节点进行一系列处理,包含实施活动、日志统计、调用外部应用程序等,而且要求处理过程含有可扩展能力。针对这种需求,企业采取 (16) 最为合适。
(16) A. 适配器模式 B. 迭代器模式 C. 访问者模式 D. 观察者模式
软件体系结构-设计模式练习题2
1、设计模式通常见来处理什么样问题( )
A.同一问题不一样表相 B不一样问题同一表相
C.不一样问题不一样表相 D.以上全部不是
2、下列属于面向对象基础标准是( )
A.继承 B.封装 C.里氏代换 D全部不是
3、Open-Close标准含义是一个软件实体( )
A.应该对扩展开放,对修改关闭.B.应该对修改开放,对扩展关闭
C.应该对继承开放,对修改关闭 D.以上全部不对
4、当我们想创建一个具体对象而又不期望指定具体类时,能够使用( )模式。
A.创建型 B.结构型 C行为型 D.以上全部能够
5、要依靠于抽象,不要依靠于具体。即针对接口编程,不要针对实现编程,是( )表述
A.开-闭标准B.接口隔离标准 C.里氏代换标准D.依靠倒转标准
6、依据设计模式思想,程序开发中应优先使用是( )关系实现复用。
A, 委派 B.继承 C创建 D.以上全部不对
复用方法:继承和组合聚合(组合委派)
7、设计模式两大专题是( )
A.系统维护和开发 B 对象组合和类继承
C.系统架构和系统开发 D.系统复用和系统扩展
8、单子模式中,两个基础关键点()和单子类自己提供单例
A .结构函数私有B.唯一实例 C.静态工厂方法 D.以上全部不对
9、下列模式中,属于行为模式是( )
A.工厂模式 B观察者 C适配器 以上全部是
10、“不要和陌生人说话” 是()标准通俗表述
A.接口隔离 B.里氏代换 C.依靠倒转 D.迪米特:一个对象应对其它对象尽可能少了解
11、结构者退化模式是经过合并()角色完成退化。
A.抽象产品 B产品 C创建者 D使用者
12、对象适配器模式是( )标准经典应用。
A.合成聚合复用标准 B.里式代换标准 C.依靠倒转标准 D.迪米特法则
13、静态工厂关键角色是( )
A.抽象产品 B.具体产品 C.静态工厂 D.消费者
15、下列相关静态工厂和工厂方法表述错误是:( )
A.二者全部满足开闭标准:静态工厂以if else方法创建对象,增加需求时候会修改源代码
B.静态工厂对具体产品创建类别和创建时机判定是混和在一起,这点在工厂方法中
C.不能形成静态工厂继承结构
D.在工厂方法模式中,对于存在继承等级结构产品树,产品创建是经过对应等级结构工厂创建。
16、在观察者模式中,表述错误是( )
A.观察者角色更新是被动。
B.被观察者能够通知观察者进行更新
C.观察者能够改变被观察者状态,再由被观察者通知全部观察者依据被观察者状态进行。
D.以上表述全部错误。
17.对于违反里式代换标准两个类,能够采取候选处理方案错误是:( )
A.创建一个新抽象类C,作为两个具体类超类,将A 和B 共同行为移动到C 中,从而处理A和B 行为不完全一致问题。
B.将B到A继承关系改组成委派关系。
C.区分是“IS-a”还是”Has-a”。假如是“Is-a”,能够使用继承关系,假如是”Has-a”应该改成委派关系
D.以上方案错误
18.对象组合有点表述不妥是( )
A. 容器类仅能经过被包含对象接口来对其进行访问。
B. “黑盒”复用,封装性好,因为被包含对象内部细节对外是不可见。
C. 经过获取指向其它含有相同类型对象引用,能够在运行期间动态地定义(对象)组合
D.造成极其严重依靠关系。
19.相关继承表述错误是:( )
A.继承是一个经过扩展一个已经有对象实现,从而取得新功效复用方法。
B.泛化类(超类)能够显式地捕捉那些公共属性和方法。特殊类(子类)则经过附加属性和方法来进行实现扩展。
C.破坏了封装性,因为这会将父类实现细节暴露给子类。
D.继承本质上是“白盒复用”,对父类修改,不会影响到子类。
20.对于依靠倒转表述错误是( )
A.依靠于抽象而不依靠于具体,也就是针对接口编程。
B.依靠倒转接口并非语法意义上接口,而是,一个类对其它对象进行调用时,所知道方法集合。
C.从选项B角度叙述,一个对象能够有多个接口。
D.实现了同一接口对象,能够在运行期间,顺利地进行替换。而且无须知道所表示用对象是那个实现类实例。
E.此题没有正确答案。
21.面向对象六条基础标准包含:开闭标准,里式代换标准,合成聚合标准和( ),( ),( ),( )。
22.在存在继承关系情况下,方法向( )方向集中,而数据向( )方向集中。
23.适配器模式,分为类适配器和对象适配器两种实现。其中类适配器采取是( )关系,而对象适配器采取是( )关系。
24.设计模式基础要素有( ),( ),( ),( ),( ),( ),( )。
25.创建型模式根本意图是要把( )和( )责任进行分离,从而降低系统( )。
26.工厂模式分为( ),( ),( )三种类型
27.门面模式是( )法则经典利用
28.MVC模型基础工作原理是基于( )模式,实现是基于( )模式
29.设计模式思想根源是( )基础标准宏观利用,本质上是没有任何模式, 发觉模式人永远是大师,而死守模式人,最对只能是一个工匠.
展开阅读全文