接前一篇文章:软考 系统架构设计师系列知识点之设计模式(6)
所属章节:
老版(第一版)教材
第7章. 设计模式
第2节. 设计模式实例
3. 某公司欲开发一套窗体图形界面类库。该类库需要包含若干预定义的窗格(Pane)对象,例如TextPane、ListPane等,窗格之间不允许直接引用。基于该类库的应用由一个包含一组窗格的窗口组成 ,并需要协调窗格之间的行为。基于该类库,在不引用窗格的前提下实现窗格之间的协作,应用开发者应采用()最为合适。
A. 备忘录模式
B. 中介者模式
C. 访问者模式
D. 迭代器模式
正确答案:B。
解析:
本题主要考查设计模式的理解与应用。根据题干描述,应用系统需要使用某公司开发的类库,该应用系统是一组窗格组成,应用需要协调窗格之间的行为,并且不能引用窗格自身。在这种要求下,对比4个候选项,其中中介者模式用一个中介对象封装一系列的对象交互。中介者使用各对象不需要显式的相互调用,从而使其耦合松散。可以看出该模式最符合需求。
4. 按照设计模式的目的进行划分,现有的设计模式可以分为三类。其中创建型模式通过采用抽象类所定义的接口,封装了系统中对象如何创建、组合等信息,其代表有()模式等;()模式主要用于如何组合已有的类和对象以获取更大的结构,其代表有Adapter模式等;()模式主要用于对象间的职责及其提供服务的分配方式,其代表有()模式等。
第1空
A. Decorator
B. Flyweight
C. Command
D. Singleton
正确答案:D。
第2空
A. 合成型
B. 组合型
C. 结构型
D. 聚合型
正确答案:C。
第3空
A. 行为型
B. 交互型
C. 耦合型
D. 关联型
正确答案:A。
第4空
A. Prototype
B. Facade
C. Proxy
D. Visitor
正确答案:D。
解析:
设计模式包括:创建型、结构型、行为型三大类别。
Singleton是单例模式,属于创建型设计模式。
Adapter是适配器模式,属于结构型设计模式。
Visitor是访问者模式,属于行为型设计模式。