当前位置: 首页 > news >正文

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

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

所属章节:

老版(第一版)教材

第7章. 设计模式

        第2节. 设计模式实例

相关试题

9. 某软件公司欲设计一款图像处理软件,帮助用户对拍摄的照片进行后期处理。在软件需求分析阶段,公司的系统分析师识别出了如下3个关键需求:

图像处理软件需要记录用户在处理照片时的所有动作,并能够支持用户动作的撤销与重做等行为。

图像处理软件需要根据当前正在处理的照片的不同特征选择合适的处理操作,处理操作与照片特征之间具有较为复杂的逻辑关系。

图像处理软件需要封装各种图像处理算法,用户能够根据需要灵活选择合适的处理算法;软件还要支持高级用户根据一定的规则添加自定义处理算法。

在系统设计阶段,公司的架构师决定采用设计模式满足上述关键需求中对系统灵活性与扩展性的需求。具体来说,为了支持灵活的撤销与重做等行为,采用()最为合适;为了封装图像操作与照片特征之间的复杂逻辑关系,采用()最为合适;为了实现图像算法的灵活选择与替换,采用()最为合适。

第1空

A. 工厂模式

B. 责任链模式

C. 中介者模式

D. 命令模式

正确答案:D。

第2空

A. 状态模式

B. 适配器模式

C. 组合模式

D. 单例模式

正确答案:A。

第3空

A. 模板方法模式

B. 访问者模式

C. 策略模式

D. 观察者模式

正确答案:C。

解析:

本题主要考查设计模式知识。题干描述了某软件公司一款图像处理软件的需求分析与设计过程,并明确指出采用设计模式实现关键需求对系统灵活性与扩展性的要求。

针对需求1,为了支持灵活的撤销与重做等行为,采用命令模式最为合适,因为命令模式可以将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,还可以对请求排队,或记录请求日志,以及支持可撤销的操作。

针对需求2,为了封装图像操作与照片特征之间的复杂逻辑关系,采用状态模式最为合适,因为状态模式将每一个条件分支放入一个独立类中,这样就可以根据对象自身的情况将对象的状态作为一个对象,这一对象可以不依赖于其它对象而独立变化。

针对需求3,为了实现图像处理算法的灵活选择与替换,采用策略模式最为合适,因为策略模式定义一系列的算法,把它们封装起来,并且使它们可相互替换,使得算法可独立于使用它的客户而变化。

http://www.lryc.cn/news/211598.html

相关文章:

  • 【python爬虫】设计自己的爬虫 1. request封装
  • 8.0 新特性 - innodb_ddl_threads
  • pgAdmin 4 v7.8 发布,PostgreSQL 开源图形化管理工具
  • Realrek 2.5G交换机 8+1万兆光RTL8373-VB-CG方案简介
  • Linux命令随笔
  • 最新版scene-builder安装
  • 直击电商商城内核!一站式解决方案
  • rabbitmq安装、基本使用
  • Amaon CloudFront助力出海业务访问优化
  • python实现ModBusRTU服务端
  • yum安装node,npm
  • ESM蛋白质语言模型系列
  • RHCE-------Day1
  • Linux(Centos7)防火墙端口操作记录
  • 【MySQL数据库】初识MySQL数据库、安装MySQL
  • Keil Map信息解析
  • 在重生奇迹MU中如何选择最佳的挂机点?
  • IT行业中的热门职业及前景展望
  • linux练习
  • 【【带有握手信号的无符号数乘法verilog+ testbench 代码】】
  • 【Python机器学习】零基础掌握BayesianRidge贝叶斯回归
  • 【机器学习】朴素贝叶斯算法基本原理与计算案例
  • redis6.0源码分析:简单动态字符串sds
  • 1.7 攻击面和攻击树
  • 解决input在谷歌浏览器自动填充问题
  • Java字节码技术
  • Java SE 学习笔记(十八)—— 注解、动态代理
  • 虚拟内存之请求分页管理
  • lazarus开发:提升sqlite数据插入速度
  • 瑞萨RH850-P1X ECM和英飞凌TC3xx SMU对比