8

历年系统架构设计师考试之设计模式试题-2012年

 3 years ago
source link: https://blog.csdn.net/lovelion/article/details/21410435
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

历年系统架构设计师考试之设计模式试题-2012年

       2012年系统架构设计师考试下午试题中出现了一道25分的设计模式大题大笑,上午仍旧是5道选择题,可以说是从2009年开考以来设计模式试题量最大的一年。Sunny友情建议微笑:建议大家先做做这些试题,看是否能够正确解答,如果在解答的同时能够拿出具体的设计和实现方案,我相信一定会受益匪浅!奋斗,试题分析和参考答案为Sunny个人所作,可能与某些已发布的“标准答案”会有所不同,如有不同意见,欢迎交流!【说明:为了体现试题的真实性,每一道试题的题号均保留原始真题题号】

       2012年系统架构设计师考试设计模式考题如下:

【全国计算机技术与软件专业技术资格(水平)考试 2012年下半年 系统架构设计师 上午试卷】

       若系统中的某子模块需要为其他模块提供访问不同数据库系统的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询。针对上述需求,可以采用 (49) 设计模式抽象出相同的数据库访问过程,该设计模式 (50)

(49) A.外观        B. 装饰        C.桥接        D.享元

(50) A.可以动态、透明地给单个对象添加职责

       B.为子系统定义了一个高层接口,这个接口使得这一子系统更加容易使用

       C.通过运用共享技术,有效支持大量细粒度的对象

       D.将抽象部分与它的实现部分分离,使它们都可以独立地变化

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

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

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

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

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

(51) A.工厂模式           B.责任链模式       C.中介者模式      D.命令模式

(52) A.状态模式           B.适配器模式       C.组合模式          D.单例模式

(53) A.模板方法模式    B.访问者模式       C.策略模式          D.观察者模式

【全国计算机技术与软件专业技术资格(水平)考试 2012年下半年 系统架构设计师 下午试卷】

试题四(共25分)

       阅读以下关于面向对象系统建模的叙述,在答题纸上回答问题1至问题3。

【说明】

       某软件企业为影音产品销售公司W开发一套在线销售系统,以提升服务的质量和效率。项目组经过讨论后决定采用面向对象方法开发该系统。在设计建模阶段需要满足以下设计要求:

       (1) W公司经常进行促销活动。根据不同的条件(如订单总额、商品数量、产品种类等),公司可以提供百分比折扣或现金减免等多种促销方式供提交订单的用户选择。实现每种促销活动的代码量很大,且会随促销策略不同经常修改。系统设计中需要考虑现有的促销和新的促销,而不用经常地重写控制器类代码。

       (2) 该在线销售系统需要计算每个订单的税率,不同商品的税率及计算方式会有所区别。所以W公司决定在系统中直接调用不同商品供应商提供的税率计算类,但每个供应商的类提供了不同的调用方法。系统设计中需要考虑如果公司更换了供应商,应该尽可能少地在系统中修改或创建新类。

       项目组架构师决定采用设计模式来满足上述设计要求,并确定从当前已经熟练掌握的设计模式中进行选择,这些设计模式包括:适配器模式(Adapter)、构造器模式(Builder)、命令模式(Command)、外观模式(Facade)、中介模式(Mediator)、原型模式(Prototype)、代理模式(Proxy)、状态模式(State)和策略模式(Strategy)等。

【问题1】(6分)

       设计模式按照其应用模式可以分为三类:创建型、结构型和行为型,请用200字以内文字说明三者的作用。

【问题2】(9分)

       请将项目组已经掌握的设计模式按照其作用分别归类到创建型、结构型和行为型模式中。

【问题3】(10分)

       针对题目中所提出的设计要求(1)和(2),项目组应该分别选择何种设计模式?请分别用200字以内文字说明具体的解决方案。

------------------------------------------------------------------------------------------------------------------------------------------------------

试题分析与解答将尽快发布!

往年试题链接:

历年系统架构设计师考试之设计模式试题分析-2009年

历年系统架构设计师考试之设计模式试题分析-2010年

历年系统架构设计师考试之设计模式试题分析-2011年

【作者:刘伟  http://blog.csdn.net/lovelion


Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK