首页
登录
从业资格
某软件企业为影音产品销售公司W开发一套在线销售系统,以提升服务的质量和效率。项目
某软件企业为影音产品销售公司W开发一套在线销售系统,以提升服务的质量和效率。项目
考试题库
2022-08-02
33
问题
某软件企业为影音产品销售公司W开发一套在线销售系统,以提升服务的质量和效率。项目组经过讨论后决定采用面向对象方法开发该系统。在设计建模阶段需要满足以下设计要求:(1)W公司经常进行促销活动。根据不同的条件(如订单总额、商品数量、产品种类等),公司可以提供百分比折扣或现金减免等多种促销方式供提交订单的用户选择。实现每种促销活动的代码量很大,且会随促销策略不同经常修改。系统设计中需要考虑现有的促销和新的促销,而不用经常地重写控制器类代码。(2)该在线销售系统需要计算每个订单的税率,不同商品的税率及计算方式会有所区别。所以W公司决定在系统中直接调用不同商品供应商提供的税率计算类,但每个供应商的类提供了不同的调用方法。系统设计中需要考虑如果公司更换了供应商,应该尽可能少地在系统中修改或创建新类。项目组架构师决定采用设计模式来满足上述设计要求,并确定从当前已经熟练掌握的设计模式中进行选择,这些设计模式包括:适配器模式(Adapter)、构造器模式(Builder)、命令模式(Command)、外观模式(Facade)、中介模式(Mediator)、原型模式(Prototype)、代理模式(Proxy)、状态模式(State)和策略模式(Strategy)等。【问题1】(6分)设计模式按照其应用模式可以分为三类:创建型、结构型和行为型,请用200字以内文字说明三者的作用。【问题2】(9分)请将项目组已经掌握的设计模式按照其作用分别归类到创建型、结构型和行为型模式中。【问题3】(10分)针对题目中所提出的设计要求(1)和(2),项目组应该分别选择何种设计模式?请分别用200字以内文字说明具体的解决方案。
选项
答案
解析
【问题1】
创建型模式主要用于创建对象,为设计类实例化新对象提供指南。
结构型模式主要用于处理类或对象的组合,对类如何设计以形成更大的结构提供指南。
行为型模式主要用于描述类或对象的交互以及职责的分配,对类之间交互以及分配责任的方式提供指南。
【问题2】
创建型模式:构造器模式、原型模式。
结构型模式:适配器模式、外观模式、代理模式。
行为型模式:命令模式、中介模式、状态模式和策略模式。
【问题3】
(1)策略模式
解决方案:在具有公共接口的独立类中定义每个计算。可以利用该模式创建各种促销类,它们从同一个超类继承。每个类都有相同名称的标准接口方法,用于根据订单编号计算将要折扣的金额总数。计算每个促销的内部代码对促销类来说完全不同(3分)。
(2)适配器模式
解决方案:增加一个类作为适配器,转换类的接口到客户端类期望的另一个接口。实现一个适配器类,这个类为系统的其他部分提供了一个不变的方法供调用,为了集成不同商品供应商提供的税率计算类,编写一个适配器类的子类,包含调用购买类所需的代码。该子类将系统的调用映射到某个供应商的税率计算类。如果要更换供应商,那么只需要写一个新的适配器子类,其他保持不变。
转载请注明原文地址:https://tihaiku.com/congyezige/2397975.html
本试题收录于:
高级系统架构设计师题库软件水平考试初中高级分类
高级系统架构设计师
软件水平考试初中高级
相关试题推荐
某大学拟开发一个用于管理学术出版物(Publication)的数字图书馆系统,
某大学拟开发一个用于管理学术出版物(Publication)的数字图书馆系统,
某大学拟开发一个用于管理学术出版物(Publication)的数字图书馆系统,
某大学拟开发一个用于管理学术出版物(Publication)的数字图书馆系统,
某证券交易所为了方便提供证券交易服务,欲开发一证券交易平台,该平台的主要功能如下
某证券交易所为了方便提供证券交易服务,欲开发一证券交易平台,该平台的主要功能如下
甲、乙两公司的软件设计师分别完成了相同的计算机程序发明,甲公司先于乙公司完成,乙
在下图所示的网络配置中,发现工作站B无法与服务器A通信。(66)故障影响了两者
数据库设计()设计是建立一个系统的E-R图。()设计是将E-R图转换成关系模
数据库设计()设计是建立一个系统的E-R图。(请作答此空)设计是将E-R图转换
随机试题
What’sthepatient’ssymptom?[br][originaltext]M:Hello.What’syourname?W
Pleaserememberto_____________(交还你的房间钥匙)beforeleavingthehotel.handbackyo
教学的基本任务有哪些?
根据以下资料计算:2007年我国财政收入为51321.78亿元,财政收入增长速度
资产负债组合管理不包括()A.资产组合管理 B.负债组合管理 C.资产
根据《证券发行与承销管理办法》《上海证券交易所科创板股票发行与承销实施办法》和《
某失血性休克患者,男性,37岁,快速输入全血1200ml后出现手足抽搐、皮肤黏膜
商业银行可以通过资产组合管理或与其他商业银行组成银团贷款的方式,使自己的授信对象
(2018年真题)中国人民银行授权外汇交易中心对外公布的当日外汇牌价是()
个体以一定的方式去影响他人对自己的印象,即个体进行自我形象的控制,通过一定的方
最新回复
(
0
)