欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】系统架构设计师-软件架构设计(二)及答案解析.doc

    • 资源ID:1336355       资源大小:231KB        全文页数:43页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】系统架构设计师-软件架构设计(二)及答案解析.doc

    1、系统架构设计师-软件架构设计(二)及答案解析(总分:96.01,做题时间:90 分钟)一、B单项选择题/B(总题数:13,分数:96.00)回调(Call Back)函数是面向过程的程序设计语言中常用的一种机制,而设计模式中的_模式就是回调机制的一个面向对象的替代品。该模式的意图是_。(分数:4.00)(1). A.Strategy(策略) B.Adapter(适配器) C.Command(命令) D.Observer(观察者)(分数:2.00)A.B.C.D.(2). A.使原本由于接口不兼容而不能一起工作的那些类可以一起工作 B.将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化

    2、,将请求排队或记录请求日志,支持可撤销的操作 C.定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新 D.使算法可独立于使用它的客户而变化(分数:2.00)A.B.C.D.如图(a)所示的 UML 类图描绘的是设计模式中的_模式。如图(b)所示的UML 类图描述了该模式的一种应用,其中与图(a)中的“Creator”对应的类是_。(分数:10.00)(1). A.Command B.Factory Method C.Composite D.Class Adapter(分数:2.00)A.B.C.D.(2). A.Bank B.Account

    3、C.Checking D.Savings(分数:2.00)A.B.C.D.(3).设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。下面关于设计模式所倡导的基本原则的描述,错误的是_。 A.模块应对扩展开放,而对修改关闭 B.优先使用继承,而不是组合 C.要针对接口编程,而不是针对实现编程 D.抽象不应该依赖于细节,细节应当依赖于抽象(分数:2.00)A.B.C.D.(4).在企业应用系统开发中,方法调用(Method Invocation)和消息(Messaging)机制是两种常用的数据处理与交换方式,下面关于这两种机制的描述,不正确

    4、的是_。 A.方法调用一般具有同步特性,而消息机制具有异步的特点 B.从可靠性方面考虑,消息机制比方法调用更有优势 C.从效率方面考虑,一般情况下消息机制比方法调用更有优势 D.消息调用机制可以支持多个数据的发送者和接收者,更加灵活(分数:2.00)A.B.C.D.(5).JavaEE 是 Java 领域内企业级应用开发的框架与标准。下面关于采用 JavaEE 架构的描述,不正确的是_。 A.JavaEE 定义了分布式环境中多层应用系统的架构,是多种 Java 技术的混合体 B.具有典型的 3 层结构:表现层、业务逻辑层和基础设施层 C.不同的应用系统对底层支持系统的要求可能不同,因此每次开发

    5、时应该针对不同的应用需求对底层系统进行二次开发,提供支持接口 D.要严格区分业务逻辑层和表现层,尤其应该注意不要在表现层中混杂业务代码(分数:2.00)A.B.C.D.当不适合采用生成子类的方法对已有的类进行扩充时,可以采用_设计模式动态地给一个对象添加一些额外的职责;当应用程序由于使用大量的对象,造成很大的存储开销时,可以采用_设计模式运用共享技术来有效地支持大量细粒度的对象;当想使用一个已经存在的类,但其接口不符合需求时,可以采用_设计模式将该类的接口转换成我们希望的接口。(分数:8.00)(1). A.命令(Command) B.适配器(Adapter) C.装饰(Decorate) D

    6、.享元(Flyweight)(分数:2.00)A.B.C.D.(2). A.命令(Command) B.适配器(Adapter) C.装饰(Decorate) D.享元(Flyweight)(分数:2.00)A.B.C.D.(3). A.命令(Command) B.适配器(Adapter) C.装饰(Decorate) D.享元(Flyweight)(分数:2.00)A.B.C.D.(4).在 CORBA 体系结构中,_属于客户端接口。 A.静态 IDL Skeletons B.POA C.静态 IDL Stubs D.动态 Skeletons(分数:2.00)A.B.C.D.某软件公司欲开发

    7、一个 Windows 平台上的公告板系统。在明确用户需求后,该公司的架构师决定采用 Command 模式实现该系统的界面显示部分,并设计 UML类图,如图所示。图中与 Command 模式中的“Invoker”角色相对应的类是_,与“Concrete Command”角色相对应的类是_。(分数:18.00)(1). A.Command B.MenuItem C.Open D.ButktinBoardScreen(分数:2.00)A.B.C.D.(2). A.Command B.MenuItem C.Open D.BulktinBoardScreen(分数:2.00)A.B.C.D.(3).系统

    8、应用架构设计中,网络架构数据流图的主要作用是将处理器和设备分配到网络中。_不属于网络架构数据流图的内容。 A.服务器、客户端及其物理位置 B.处理器说明信息 C.单位时间的数据流大小 D.传输协议(分数:2.00)A.B.C.D.(4).软件架构贯穿于软件的整个生命周期,但在不同阶段对软件架构的关注力度并不相同,在_阶段,对软件架构的关注最多。 A.需求分析与设计 B.设计与实现 C.实现与测试 D.部署与变更(分数:2.00)A.B.C.D.(5).软件架构设计是降低成本、改进质量、按时和按需交付产品的关键活动。以下关于软件架构重要性的叙述中,错误的是_。 A.架构设计能够满足系统的性能、可

    9、维护性等品质 B.良好的架构设计能够更好地捕获并了解用户需求 C.架构设计能够使得不同的利益相关人(Stakeholders)达成一致的目标 D.架构设计能够支持项目计划和项目管理等活动(分数:2.00)A.B.C.D.(6).软件架构需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。以下活动中,不属于软件架构需求过程范畴的是_。 A.设计构件 B.需求获取 C.标识构件 D.架构需求评审(分数:2.00)A.B.C.D.(7).基于架构的软件设计(ABSD)强调由商业、质量和功能需求的组合驱动软件架构设计。以下关于 ABSD的叙述中,错误的是_。 A.使用 ABSD 方法,

    10、设计活动可以从项目总体功能框架明确就开始 B.ABSD 方法是一个自顶向下,递归细化的过程 C.ABSD 方法有 3 个基础:功能分解、选择架构风格实现质量和商业需求及软件模板的使用 D.使用 ABSD 方法,设计活动的开始意味着需求抽取和分析活动可以终止(分数:2.00)A.B.C.D.(8).软件架构文档是对软件架构的正式描述,能够帮助与系统有关的开发人员更好地理解软件架构。软件架构文档的写作应该遵循一定的原则。以下关于软件架构文档写作原则的叙述中,错误的是_。 A.架构文档应该从架构设计者的角度进行编写 B.应该保持架构文档的即时更新,但更新不要过于频繁 C.架构文档中的描述应该尽量避免

    11、不必要的重复 D.每次架构文档修改,都应该记录修改的原则(分数:2.00)A.B.C.D.(9).架构复审是基于架构开发中一个重要的环节。以下关于架构复审的叙述中,错误的是_。 A.架构复审的目标是标识潜在的风险,及早发现架构设计的缺陷和错误 B.架构复审过程中,通常会对一个可运行的最小化系统进行架构评估和测试 C.架构复审人员由系统设计与开发人员组成 D.架构设计、文档化和复审是一个迭代的过程(分数:2.00)A.B.C.D.Windows 操作系统在图形用户界面处理方面采用的核心架构风格是_风格。Java 语言宣传的“一次编写,到处运行”的特性,从架构风格上看符合_风格的特点。(分数:12

    12、.00)(1). A.虚拟机 B.管道-过滤器 C.事件驱动 D.微内核-扩展(分数:2.00)A.B.C.D.(2). A.虚拟机 B.管道-过滤器 C.事件驱动 D.微内核-扩展(分数:2.00)A.B.C.D.(3).某软件开发公司负责开发一个 Web 服务器服务端处理软件,其核心部分是对客户端请求消息的解析与处理,包括 HTTP 报头分离、SOAP 报文解析等功能。该公司的架构师决定采用成熟的架构风格指导整个软件的设计,以下_架构风格,最适合该服务端处理软件。 A.虚拟机 B.管道-过滤器 C.黑板结构 D.分层结构(分数:2.00)A.B.C.D.(4).希赛公司欲开发一个基于图形用

    13、户界面的集成调试器。该调试器的编辑器和变量监视器可以设置调试断点。当调试器在断点处暂停运行时,编辑程序可以自动卷屏到断点,变量监视器刷新变量数值。针对这样的功能描述,采用_的架构风格最为合适。 A.数据共享 B.虚拟机 C.隐式调用 D.显式调用(分数:2.00)A.B.C.D.(5).某公司欲开发一种工业机器人,用来进行汽车零件的装配。公司的架构师经过分析与讨论,给出了该机器人控制软件的两种候选架构方案:闭环控制和分层结构。以下对于这两种候选架构的选择理由,错误的是_。 A.应该采用闭环控制架构,因为闭环结构给出了将软件分解成几个协作构件的方法,这对于复杂任务特别适合 B.应该采用闭环控制结

    14、构,因为闭环控制架构中机器人的主要构件监控器、传感器、发动机等)是彼此分开的,并能够独立替换 C.应该采用分层结构,因为分层结构很好地组织了用来协调机器人操作的构件,系统结构更加清晰 D.应该采用分层结构,因为抽象层的存在,满足了处理不确定性的需要:在较低层次不确定的实现细节在较高层次会变得确定(分数:2.00)A.B.C.D.(6).一个软件的架构设计是随着技术的不断进步而不断变化的。以编译器为例,其主流架构经历了管道-过滤器到数据共享为中心的转变过程。以下关于编译器架构的叙述中,错误的是_。 A.早期的编译器采用管道-过滤器架构风格,以文本形式输入的代码被逐步转化为各种形式,最终生成可执行

    15、代码 B.早期的编译器采用管道-过滤器架构风格,并且大多数编译器在词法分析时创造独立的符号表,在其后的阶段会不断修改符号表,因此符号表并不是程序数据的一部分 C.现代的编译器采用以数据共享为中心的架构风格,主要关心编译过程中程序的中间表示 D.现代的编译器采用以数据共享为中心的架构风格,但由于分析树是在语法分析阶段结束后才产生作为语义分析的输入,因此分析树不是数据中心的共享数据(分数:2.00)A.B.C.D._的选择是开发一个软件系统时的基本设计决策;_是最底层的模式,关注软件系统的设计与实现,描述了如何实现构件及构件之间的关系。引用-计数是 C+管理动态资源时常用的一种_。(分数:14.0

    16、0)(1). A.架构模式 B.惯用法 C.设计模式 D.分析模式(分数:2.00)A.B.C.D.(2). A.架构模式 B.惯用法 C.设计模式 D.分析模式(分数:2.00)A.B.C.D.(3). A.架构模式 B.惯用法 C.设计模式 D.分析模式(分数:2.00)A.B.C.D.(4).某软件公司基于面向对象技术开发了一套图形界面显示构件库 Visual Component。在使用该库构建某图形界面时,用户要求为界面定制一些特效显示效果,如带滚动条、能够显示艺术字体的透明窗体等。针对这种需求,公司采用_最为灵活。 A.桥接模式 B.命令模式 C.组合模式 D.装饰模式(分数:2.0

    17、0)A.B.C.D.(5).某软件公司承接了为某工作流语言开发解释器的工作。该工作流语言由多种活动节点构成,具有类XML 的语法结构。用户要求解释器工作时,对每个活动节点进行一系列的处理,包括执行活动、日志记录、调用外部应用程序等,并且要求处理过程具有可扩展能力。针对这种需求,公司采用_最为恰当。 A.适配器模式 B.迭代器模式 C.访问者模式 D.观察者模式(分数:2.00)A.B.C.D.(6).Architecture Tradeoff Analysis Method(ATAM)是一种软件架构的评估方法,以下关于该方法的叙述中,正确的是_。 A.ATAM 是一种代码评估方法 B.ATAM

    18、 需要评估软件的需求是否准确 C.ATAM 需要对软件系统进行测试 D.ATAM 不是一种精确的评估工具(分数:2.00)A.B.C.D.(7).识别风险点、非风险点、敏感点和权衡点是 ATAM 方法中的关键步骤。已知针对某系统所做的架构设计中,提高其加密子系统的加密级别将对系统的安全性和性能都产生非常大的影响,则该子系统一定属于_。 A.风险点和敏感点 B.权衡点和风险点 C.权衡点和敏感点 D.风险点和非风险点(分数:2.00)A.B.C.D.如图(a)所示的 UML 类图描绘的是设计模式中的_模式。如图(b)所示的UML 类图描述了该模式的一种应用,其中与图(a)中的“Abstracti

    19、on”对应的类是_。(分数:5.00)(1). A.Command B.Bridge C.Composite D.Proxy(分数:1.00)A.B.C.D.(2). A.DataAccess B.DataAccessImpl C.CustomerDM D.AccountDM(分数:1.00)A.B.C.D.(3).软件的分层式体系结构把软件系统划分为 4 层,这 4 层结构自顶向下分别是_。 A.应用软件 业务构件 中间件 系统软件 B.业务构件 应用软件 中间件 系统软件 C.应用软件 中间件 系统软件 业务构件 D.业务构件 中间件 应用软件 系统软件(分数:1.00)A.B.C.D.(

    20、4).结构模板能够帮助分析员建立一个逐层细化的层次结构。结构环境图(Architecture Context Diagram,ACD)位于层次结构的顶层。在从 ACD 导出的_中给出了各个专门子系统和重要(数据与控制)信息流。 A.系统语境图(SCD) B.结构互连图(AID) C.结构流程图(AFD) D.结构图的规格说明(ADS)(分数:1.00)A.B.C.D.(5).管道和过滤器模式属于_。 A.数据为中心的体系结构 B.数据流体系结构 C.调用和返回体系结构 D.层次式体系结构(分数:1.00)A.B.C.D.某银行系统采用 Factory Method 方法描述其不同账户之间的关系

    21、,设计出的类图如图所示。其中与 Factory Method 中的“Creator。”角色相对应的类是_;与“Product”角色相对应的类是_。(分数:5.00)(1). A.Bank B.Account C.Checking D.Savings(分数:1.00)A.B.C.D.(2). A.Bank B.Account C.Checking D.Savings(分数:1.00)A.B.C.D.(3).在客户机/服务器系统开发中,采用_时,应将数据层和数据处理层放置于服务器,应用逻辑层、表示逻辑层和表示层放置于客户机。 A.分布式表示结构 B.分布式应用结构 C.分布式数据和应用结构 D.分

    22、布式数据结构(分数:1.00)A.B.C.D.(4).软件架构是降低成本、改进质量、按时和按需交付产品的关键因素。以下关于软件架构的描述,错误的是_。 A.根据用户需求,能够确定一个最佳的软件架构,指导整个软件的开发过程 B.软件架构设计需要满足系统的质量属性,如性能、安全性和可修改性等 C.软件架构设计需要确定组件之间的依赖关系,支持项目计划和管理活动 D.软件架构能够指导设计人员和实现人员的工作(分数:1.00)A.B.C.D.(5).软件架构设计包括提出架构模型、产生架构设计和进行设计评审等活动,是一个迭代的过程。以下关于软件架构设计活动的描述,错误的是_。 A.在建立软件架构的初期,一

    23、般需要选择一个合适的架构风格 B.将架构分析阶段已标识的构件映射到架构中,并分析这些构件之间的关系 C.软件架构设计活动将已标识构件集成到软件架构中,设计并实现这些构件 D.一旦得到了详细的软件架构设计,需要邀请独立于系统开发的外部人员对系统进行评审(分数:1.00)A.B.C.D.基于软件架构的设计(Architecture Based Software Development,ABSD)强调由商业、质量和功能需求的组合驱动软件架构设计。它强调采用_来描述软件架构,采用_来描述需求。(分数:8.00)(1). A.类图和序列图 B.视角与视图 C.构件和类图 D.构件与功能(分数:1.00)

    24、A.B.C.D.(2). A.用例与类图 B.用例与视角 C.用例与质量场景 D.视角与质量场景(分数:1.00)A.B.C.D.(3).某游戏公司欲开发一个大型多人即时战略游戏,游戏设计的目标之一是能够支持玩家自行创建战役地图,定义游戏对象的行为和之间的关系。针对该目标,公司应该采用_架构风格最为合适。 A.管道-过滤器 B.隐式调用 C.主程序-子程序 D.解释器(分数:1.00)A.B.C.D.(4).希赛公司欲为某种型号的示波器开发内置软件。该公司的架构师设计了如图所示的软件架构。在软件架构评审时,专家认为该架构存在的问题是_。(分数:1.00)A.B.C.D.(5).希赛公司承接了一

    25、个开发家用空调自动调温器的任务,调温器测量外部空气温度,根据设定的期望温度控制空调的开关。根据该需求,公司应采用_架构风格最为合适。 A.解释器 B.过程控制 C.分层 D.管道-过滤器(分数:1.00)A.B.C.D.(6).在客户机/服务器系统开发中,采用_时,应将数据层和数据处理层放置于服务器,应用逻辑层、表示逻辑层和表示层放置于客户机。 A.分布式表示结构 B.分布式应用结构 C.分布式数据和应用结构 D.分布式数据结构(分数:1.00)A.B.C.D.(7).希赛公司欲开发一个漫步者机器人,用来完成火星探测任务。机器人的控制者首先定义探测任务和任务之间的时序依赖性,机器人接受任务后,

    26、需要根据自身状态和外界环境进行动态调整,最终自动完成任务。针对这些需求,该机器人应该采用_架构风格最为合适。 A.解释器 B.主程序-子程序 C.隐式调用 D.管道-过滤器(分数:1.00)A.B.C.D.(8).希赛公司欲开发一个语音识别系统,语音识别的主要过程包括分割原始语音信号、识别音素、产生候选词、判定语法片断、提供语义解释等。每个过程都需要进行基于先验知识的条件判断并进行相应的识别动作。针对该系统的特点,采用_架构风格最为合适。 A.解释器 B.面向对象 C.黑板 D.隐式调用(分数:1.00)A.B.C.D.特定领域软件架构(DSSA)是在一个特定应用领域为一组应用提供组织结构参考

    27、的标准软件架构。实施 DSSA 的过程中包括一系列基本的活动,其中_活动的主要目的是为了获得 DSSA。该活动参加人员中,_的主要任务是提供关于领域中系统的需求规约和实现的知识。(分数:2.00)(1). A.领域需求 B.领域分析 C.领域设计 D.领域实现(分数:1.00)A.B.C.D.(2). A.领域专家 B.领域分析者 C.领域设计者 D.领域实现者(分数:1.00)A.B.C.D.某服务器软件系统对可用性(Availability)、性能(Performance)和可修改性(Modification)的要求较高,_设计策略能提高该系统的可用性,_设计策略能够提高该系统的性能,_设

    28、计策略能够提高该系统的可修改性。(分数:7.00)(1). A.Ping/Echo B.限制访问 C.运行时注册 D.接口-实现分离(分数:1.00)A.B.C.D.(2). A.分层结构 B.事务机制 C.主动冗余 D.队列调度(分数:1.00)A.B.C.D.(3). A.信息隐藏 B.记录/回放 C.任务模型 D.回滚(分数:1.00)A.B.C.D.(4).某服务器软件系统能够正确运行并得出计算结果,但存在“系统出错后不能在要求的时间内恢复到正常状态”和“对系统进行二次开发时总要超过半年的时间”两个问题,上述问题依次与质量属性中的_相关。 A.可用性和性能 B.性能和可修改性 C.性能

    29、和可测试性 D.可用性和可修改性(分数:1.00)A.B.C.D.(5).希赛公司欲开发一个软件系统的在线文档帮助系统,用户可以在任何一个查询上下文中输入查询关键字,如果当前查询环境下没有相关内容,则系统会将查询按照一定的顺序转发给其他查询环境。基于上述需求,采用_最为合适。 A.责任链模式 B.桥接模式 C.装饰模式 D.适配器模式(分数:1.00)A.B.C.D.(6).希赛公司欲开发一套窗体图形界面类库。该类库需要包含若干预定义的窗格(Pane)对象,例如TextPane、ListPane 等,窗格之间不允许直接引用。基于该类库的应用由一个包含一组窗格的窗口组成,并需要协调窗格之间的行为

    30、。基于该类库,在不引用窗格的前提下实现窗格之间的协作,应用开发者应采用_最为合适。 A.备忘录模式 B.中介者模式 C.访问者模式 D.迭代器模式(分数:1.00)A.B.C.D.(7).希赛公司开发一个文档编辑器,该编辑器允许在文档中直接嵌入图形对象,但开销很大。用户在系统设计之初提出编辑器在打开文档时必须十分迅速,可以暂时不显示当前页面以外的图形。针对这种需求,公司可以采用_避免同时创建这些图形对象。 A.代理模式 B.外观模式 C.桥接模式 D.组合模式(分数:1.00)A.B.C.D.正确识别风险点、非风险点、敏感点和权衡点是进行软件架构评价的关键步骤。其中_是实现一个特定质量属性的关

    31、键特征,该特征为一个或多个软件构件所共有。“改变加密的级别可能会对安全性和性能都产生显著的影响”,这是一个对系统_的描述。(分数:1.00)(1). A.风险点 B.非风险点 C.敏感点 D.权衡点(分数:0.50)A.B.C.D.(2). A.风险点 B.非风险点 C.敏感点 D.权衡点(分数:0.50)A.B.C.D.软件质量属性通常需要采用特定的设计策略实现。例如,_设计策略能提高该系统的可用性,_设计策略能够提高该系统的性能,_设计策略能够提高该系统的安全性。(分数:2.01)(1). A.心跳机制 B.数据驱动 C.关注点分离 D.信息隐藏(分数:0.67)A.B.C.D.(2).

    32、A.引入中间层 B.事务机制 C.主动冗余 D.优先级队列(分数:0.67)A.B.C.D.(3). A.信息隐藏 B.内置监控器 C.限制访问 D.检查点(分数:0.67)A.B.C.D.系统架构设计师-软件架构设计(二)答案解析(总分:96.01,做题时间:90 分钟)一、B单项选择题/B(总题数:13,分数:96.00)回调(Call Back)函数是面向过程的程序设计语言中常用的一种机制,而设计模式中的_模式就是回调机制的一个面向对象的替代品。该模式的意图是_。(分数:4.00)(1). A.Strategy(策略) B.Adapter(适配器) C.Command(命令) D.Obs

    33、erver(观察者)(分数:2.00)A.B.C. D.解析:(2). A.使原本由于接口不兼容而不能一起工作的那些类可以一起工作 B.将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化,将请求排队或记录请求日志,支持可撤销的操作 C.定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新 D.使算法可独立于使用它的客户而变化(分数:2.00)A.B. C.D.解析:解析 Command(命令)模式将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作。 Command 模式抽象出待

    34、执行的动作以参数化某对象,我们可用面向过程语言中的回调函数表达这种参数化机制。所谓回调函数,是指函数先在某处注册,而它将在稍后某个需要的时候被调用。Command 模式是回调机制的一个面向对象的替代品。 Command 模式在不同的时刻指定、排列和执行请求。一个 Command 对象可以有一个与初始请求无关的生存期。如果一个请求的接收者可用一种与地址空间无关的方式表达,那么就可将负责该请求的命令对象传送给另一个不同的进程并在那里实现该请求。 Command 模式支持取消操作。Command 模式的 Execute 操作可在实施操作前将状态存储起来,在取消操作时这个状态用来消除该操作的影响。Co

    35、mmand 接口必须添加一个 Unexecute操作,该操作取消上一次 Execute 调用的效果。执行的命令被存储在一个历史列表中。可通过向后和向前遍历这一列表并分别调用 Unexecute 和 Execute 来实现重数不限的“取消”和“重做”。 Command 模式支持修改日志,这样当系统崩溃时,这些修改可以被重做一遍。在 Command 接口中添加装载操作和存储操作,可以用来保持变动的一个一致的修改日志。从崩溃中恢复的过程包括从磁盘中重新读入记录下来的命令并用 Execute 操作重新执行它们。 Command 模式用构建在原语操作上的高层操作构造一个系统。这样一种结构在支持事务的信息

    36、系统中很常见。一个事务封装了对数据的一组变动。Command 模式提供了对事务进行建模的方法。Command 模式有一个公共的接口,可以用同一种方式调用所有的事务。同时,使用该模式也易于添加新事务以扩展系统。如图(a)所示的 UML 类图描绘的是设计模式中的_模式。如图(b)所示的UML 类图描述了该模式的一种应用,其中与图(a)中的“Creator”对应的类是_。(分数:10.00)(1). A.Command B.Factory Method C.Composite D.Class Adapter(分数:2.00)A.B. C.D.解析:(2). A.Bank B.Account C.Ch

    37、ecking D.Savings(分数:2.00)A. B.C.D.解析:解析 Command 模式将一个请求封装为一个对象,从而将不同的请求对数化并进行排队或登记,以支持撤销操作。 Factory Method 模式定义一个创建对象的接口,但由子类决定需要实例化哪一个类。 Composite 模式将对象组成树结构来表示局部和整体的层次关系。客户可以统一处理单个对象和对象组合。Class Adapter 模式将一个类的接口转换成用户希望得到的另一种接口。它使原本不相容的接口得以协同工作。(3).设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验

    38、的总结。下面关于设计模式所倡导的基本原则的描述,错误的是_。 A.模块应对扩展开放,而对修改关闭 B.优先使用继承,而不是组合 C.要针对接口编程,而不是针对实现编程 D.抽象不应该依赖于细节,细节应当依赖于抽象(分数:2.00)A.B. C.D.解析:解析 设计模式所倡导的基本原则如下。 开闭原则:一个软件实体应当对扩展开放,对修改关闭。在设计一个模块时,应当使这个模块可以在不被修改的情况下被扩展。关键在于抽象,抽象层要预见所有可能的扩展,因此,抽象层在任何扩展情况下都不会改变,即对修改关闭。同时,由于从抽象层导出一个或多个新类,可以有不同的实现,改变系统的的行为,此即为对扩展开发。简而言之

    39、,抽象层对修改关闭,通过扩展实现改变系统行为。 里氏代换原则:任何基类可以出现的地方,子类一定可以出现。 依赖原则:要依赖于抽象,而不是具体实现。也可以这样说,要针对接口编程,不要针对实现编程。 接口分离原则:应当为客户端提供尽量小的单独的接口,而不是提供大的接口。 组合复用原则:要尽量使用组合,而不是继承关系达到复用目的。 迪米特法则:又叫最少知识法则,就是说一个对象应当对其他对象有尽可能少的了解。(4).在企业应用系统开发中,方法调用(Method Invocation)和消息(Messaging)机制是两种常用的数据处理与交换方式,下面关于这两种机制的描述,不正确的是_。 A.方法调用一

    40、般具有同步特性,而消息机制具有异步的特点 B.从可靠性方面考虑,消息机制比方法调用更有优势 C.从效率方面考虑,一般情况下消息机制比方法调用更有优势 D.消息调用机制可以支持多个数据的发送者和接收者,更加灵活(分数:2.00)A.B.C. D.解析:解析 方法调用是指当某个事件发生时,调用某个对象的方法来处理事件。消息机制是指当某个事件发生时,把相关的消息发送给某些对象(一个或多个),相关对象捕获消息后,进行相应的处理。 从以上定义可以看出,方法调用一般具有同步特性,而消息机制具有异步的特点。在消息调用机制中,消息是通过消息总线进行发送的,可以支持多个数据的发送者和接收者,更加灵活。 从效率方

    41、面考虑,由于方法调用指定调用某个对象的方法,同步进行,所以效率要高一些。而消息机制由于采用异步方法,数据不一定得到很快的处理,具体要根据接收消息的对象的处理情况,所以一般情况下效率会低一些。但是,从可靠性方面考虑,由于消息机制是通过系统总线来完成,且可能有多个接收者,所以比方法调用更有优势。(5).JavaEE 是 Java 领域内企业级应用开发的框架与标准。下面关于采用 JavaEE 架构的描述,不正确的是_。 A.JavaEE 定义了分布式环境中多层应用系统的架构,是多种 Java 技术的混合体 B.具有典型的 3 层结构:表现层、业务逻辑层和基础设施层 C.不同的应用系统对底层支持系统的

    42、要求可能不同,因此每次开发时应该针对不同的应用需求对底层系统进行二次开发,提供支持接口 D.要严格区分业务逻辑层和表现层,尤其应该注意不要在表现层中混杂业务代码(分数:2.00)A.B.C. D.解析:解析 JavaEE 以前称为 J2EE,可以帮助开发和部署可移植、健壮、可伸缩且安全的服务器端Java 应用程序。JavaEE 是在 JavaSE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(SOA)和 Web 2.0 应用程序。JavaEE 定义了分布式环境中多层应用系统的架构,是多种 Java 技术的混合体,具有典型的 3 层结构

    43、:表现层、业务逻辑层和基础设施层。在实际应用中,基础设施层应该要保持稳定,要严格区分业务逻辑层和表现层,尤其应该注意不要在表现层中混杂业务代码。当不适合采用生成子类的方法对已有的类进行扩充时,可以采用_设计模式动态地给一个对象添加一些额外的职责;当应用程序由于使用大量的对象,造成很大的存储开销时,可以采用_设计模式运用共享技术来有效地支持大量细粒度的对象;当想使用一个已经存在的类,但其接口不符合需求时,可以采用_设计模式将该类的接口转换成我们希望的接口。(分数:8.00)(1). A.命令(Command) B.适配器(Adapter) C.装饰(Decorate) D.享元(Flyweigh

    44、t)(分数:2.00)A.B.C. D.解析:(2). A.命令(Command) B.适配器(Adapter) C.装饰(Decorate) D.享元(Flyweight)(分数:2.00)A.B.C.D. 解析:(3). A.命令(Command) B.适配器(Adapter) C.装饰(Decorate) D.享元(Flyweight)(分数:2.00)A.B. C.D.解析:解析 本题考查面向对象设计。 装饰模式主要的目的是在无法生成子类的情况下给一个对象动态地增加新的职责;享元设计模式是共享大量细粒度的对象;适配器设计模式则是将已有的接口转换为系统希望的接口形式。(4).在 CORB

    45、A 体系结构中,_属于客户端接口。 A.静态 IDL Skeletons B.POA C.静态 IDL Stubs D.动态 Skeletons(分数:2.00)A.B.C. D.解析:解析 在 CORBA 体系结构中,ORB(Object Request Broker,对象请求代理)负责处理底层网络细节,它可以运行在各种不同的底层网络协议上,如 TCP/IP、IPX 和 SS7 等。在此基础上,ORB 实现了一系列的功能,如对象定位、编组与解组、初始化服务和接口库等。它为客户端和服务器端提供标准 API,使得客户不用考虑底层网络细节,通过对象引用来实现对远程对象的请求调用。 IDL(Inte

    46、rface Definition Language,接口定义语言)定义客户机和服务器之间的静态接口,通过它实现了对象接口与对象实现的分离,屏蔽了语言和系统软件带来的异构件。通过标准的 IDL 编译器,可生成客户机端的 IDL 存根(Stubs)和服务器端的骨架(Skeletons),这两者就如同客户机端程序和服务器端程序连接 ORB 的粘合剂,IDL 存根提供了访问对象服务的静态接口,而骨架则包含了服务对象的静态接口并负责实现与对象实现中具体方法的连接。 IDL 存根被称为静态调用接口,由 IDL 编译器编译目标对象的 IDL 接口描述文件而自动产生,客户程序与它直接相连。IDL 存根的作用相当于本地调用,由存根向 ORB 透明地提供一个接口,以实现对操作参数的编码和解释。IDL 存根把请求从特定的编程语言的表示形式转换为适于传递到目标对象的形式进行通信传输。存根为客户提供了一种机制,使得客户能够不关心 ORB 的存在,而把请求交给存根,由存根负责对请求参数的封装和发送,以及对返回结果的接收和解封装。 静态 IDL 骨架是静态 IDL存根在服务器端的对应,在请求的接收端提供与存根类似的服务。当 ORB


    注意事项

    本文(【计算机类职业资格】系统架构设计师-软件架构设计(二)及答案解析.doc)为本站会员(appealoxygen216)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开