软考 系统架构设计师系列知识点之设计模式(12)

接前一篇文章:软考 系统架构设计师系列知识点之设计模式(11)

所属章节:

老版(第一版)教材

第7章. 设计模式

第2节. 设计模式实例

  1. 某公司开发一个文档编辑器,改变及其允许在文档中直接嵌入图形对象,但开销很大。用户在系统设计之初提出编辑器在打开文档时必须十分迅速,可以暂时不显示当前页面以外的图形。针对这种需求,公司可以采用()避免同时创建这些图形对象。

A. 代理模式

B. 外观模式

C. 桥接模式

D. 组合模式

正确答案:A。

解析:

本体主要考查设计模式的理解与用用。根据题干描述,改变及其需要在文档中嵌入显示开销很大的图形对象,为了能够提高系统效率,需要避免同时创建这些图像。针对这些要求,对比候选项,可以发现代理模式可以解决直接访问对象时带来的问题。例如:要访问的对象在远程的机器上;对象创建开销很大,或者某些操作需要安全控制,或者需要进程外的访问等。因此代理模式是最为适合的设计模式。

  1. 设计模式基于面向对象技术,是人们在长期的开发实践中良好经验的结晶,提供了一个简单、统一的描述方法,使得人们可以复用这些软件设计办法、过程管理经验。按照设计模式的目的划分,现有的设计模式可以分为创建型、()和行为型三种类型。其中()属于创建型模式,()属于行为型模式。()模式可以将一个复杂的组件分成功能性抽象和内部实现两个独立的但又相关的继承层次结构,从而可以实现接口与实现分离。

第1空

A. 合成型

B. 组合型

C. 结构型

D. 聚合型

正确答案:C。

第2空

A. Adapter

B. Facade

C. Command

D. Singleton

正确答案:D。

第3空

A. Decorator

B. Composite

C. Memento

D. Builder

正确答案:C。

第4空

A. Prototype

B. Flyweight

C. Adapter

D. Bridge

正确答案:D。

解析:

设计模式基于面向对象技术,使人们在长期的开发时间中良好经验的结晶,提供了一个简单、统一的描述方法,使得人们可以服用这些软件设计方法、过程管理经验。按照设计模式的目的进行划分,现有的设计模式可以分为创建型、结构型和行为型三种模式。其中创建型模式主要包括Abstrsact Factory、Builder、Factory Method、Prototype、Singleton等;结构型模式主要包括Adapter、Bridge、Composite、Decorator、Facade、Flyweight和Proxy;行为型模式主要包括Chain of Responbility、 Command、Interpreter、Iterator、Mediator、Memento、Observer、State、Strategy、Template、Method、Visitor等。Bridge模式可以每一个复杂的组件分成功能性抽象和内部实现两个独立的但有相关的继承层次结构,改变组件的这两个层次结构很简单,以至于它们可以互相独立地变化,采用Bridge模式可以将接口与实现分离,提高了可扩展性,并对客户端隐藏了实现的细节。

相关推荐
昨天的猫41 分钟前
原来项目中的观察者模式是这样玩的
后端·设计模式
2301_795167203 小时前
玩转Rust高级应用 如何进行面向对象设计模式的实现,实现状态模式
设计模式·rust·状态模式
星夜泊客12 小时前
Unity 游戏开发中的防御性编程与空值处理实践
unity·设计模式·游戏引擎
Adellle14 小时前
设计模式的介绍
设计模式
达斯维达的大眼睛15 小时前
设计模式-单列模式
设计模式·cpp
Javatutouhouduan15 小时前
记一次redis主从切换导致的数据丢失与陷入只读状态故障
java·redis·设计模式·java面试·高可用·java后端·java程序员
数据知道17 小时前
Go语言设计模式:抽象工厂模式详解
设计模式·golang·抽象工厂模式·go语言
数据知道18 小时前
Go语言设计模式:组合模式详解
设计模式·golang·组合模式·go语言
有意义20 小时前
Spring Boot 项目中部门查询功能实现与依赖注入优化
后端·设计模式
岁忧1 天前
Go channel 的核心概念、操作语义、设计模式和实践要点
网络·设计模式·golang