软考 系统架构设计师系列知识点之设计模式(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模式可以将接口与实现分离,提高了可扩展性,并对客户端隐藏了实现的细节。

相关推荐
程序员Terry9 小时前
同事被深拷贝坑了3小时,我教他原型模式的正确打开方式
java·设计模式
刀法如飞1 天前
AI时代,程序员都应该是算法思想工程师
人工智能·设计模式·程序员
在西安放羊的牛油果1 天前
我把 2000 行下单代码,重构成了一套交易前端架构
前端·设计模式·架构
寅时码2 天前
React 正在演变为一场不可逆的赛博瘟疫:AI 投毒、编译器迷信与装死的官方
前端·react.js·设计模式
willow5 天前
Axios由浅入深
设计模式·axios
七月丶7 天前
别再手动凑 PR 了:这个 AI Skill 会按仓库习惯自动建分支、拆提交、提 PR
人工智能·设计模式·程序员
刀法如飞7 天前
从程序员到架构师:6大编程范式全解析与实践对比
设计模式·系统架构·编程范式
九狼7 天前
Flutter + Riverpod +MVI 架构下的现代状态管理
设计模式
静水流深_沧海一粟8 天前
04 | 别再写几十个参数的构造函数了——建造者模式
设计模式