正确答案: A
代理模式
题目:博学公司开发一个文档编辑器,该编辑器允许在文档中直接嵌入图形对象,但开销很大。用户在系统设计之初提出编辑器在打开文档时必须十分迅速,可以暂时不显示当前页面以外的图形。针对这种需求,公司可以采用()避免同时创建这些图形对象。
解析:本题主要考查设计模式的理解与应用。根据题干描述,该编辑器需要在文档中嵌入显示开销很大的图形对象,为了能够提高系统效率,需要避免同时创建这些图像。这对这些要求,对比候选项,可以发现代理模式可以解决直接访问对象时带来的问题,例如:要访问的对象在远程的机器上;对象创建开销很大,或者某些操作需要安全控制,或者需要进程外的访问等。因此代理模式是最为合适的设计模式。
查看原题 查看所有试题
学习资料的答案和解析:
[单选题]JavaEE是Java领域内企业级应用开发的框架与标准。下面关于采用JavaEE架构的描述,不正确的是()
不同的应用系统对底层支持系统的要求可能不同,因此每次开发时应该针对不同的应用需求对底层系统进行二次开发,提供支持接口
解析:JavaEE以前称为J2EE,可以帮助开发和部署可移植、健壮、可伸缩且安全的服务器端Java应用程序。JavaEE是在JavaSE的基础上构建的,它提供Web服务、组件模型、管理和通信API,可以用来实现企业级的面向服务体系结构(SOA)和Web2.0应用程序。JavaEE定义了分布式环境中多层应用系统的架构,是多种Java技术的混合体,具有典型的3层结构:表现层、业务逻辑层和基础设施层。在实际应用中,基础设施层应该要保持稳定,要严格区分业务逻辑层和表现层,尤其应该注意不要在表现层中混杂业务代码。
[单选题]架构复审是基于架构开发中一个重要的环节。以下关于架构复审的叙述中,错误的是()
架构复审人员由系统设计与开发人员组成
解析:架构复审是基于架构开发中一个重要的环节。架构设计、文档化和复审是一个迭代的过程。从这个方面来说,在一个主版本的软件架构分析之后,要安排一次由外部人员(用户代表和领域专家)参加的复审。架构复审过程中,通常会对一个可运行的最小化系统进行架构评估和测试。架构复审的目标是标识潜在的风险,及早发现架构设计的缺陷和错误。
[单选题]博学公司欲开发一个基于图形用户界面的集成调试器。该调试器的编辑器和变量监视器可以设置调试断点。当调试器在断点处暂停运行时,编辑程序可以自动卷屏到断点,变量监视器刷新变量数值。针对这样的功能描述,采用()的架构风格最为合适。
隐式调用
解析:根据题干描述,调试器在设置端点时,其本质是在断点处设置一个事件监听函数,当程序执行到断点位置时,会触发并调用该事件监听函数,监听函数负责进行自动卷屏、刷新变量数值等动作。这是一个典型的回调机制,属于隐式调用的架构风格。
[单选题]结构模板能够帮助分析员建立一个逐层细化的层次结构。结构环境图(Architect ure Context Diagram,ACD)位于层次结构的顶层。在从ACD导出的()中给出了各个专门子系统和重要(数据与控制)信息流。
结构流程图(AFD)
解析:结构模板能帮助系统分析员建立一个细节的层次结构。结构环境图ACD则位于层次结构的顶层,建立了待实现系统与系统运行环境之间的信息边界。ACD定义了:①系统使用的所有信息的外部产生者。②由系统建立的所有信息的外部使用者。⑧通过接口进行通信或实施维护与自测试的所有实体。专门子系统定义在从ACD导出的结构流程图(Architect ure Flow Diagram,AFD)中。信息流穿越ACD的各个区域,可用于引导系统工程师开发AFD。AFD给出了各个专门子系统和重要的(数据与控制)信息流。结构模板把子系统处理划分成5个处理区域。每个子系统可以包含一个或多个系统元素(如硬件、软件、人),它们是系统工程师分配给子系统的。
[单选题]当不适合采用生成子类的方法对已有的类进行扩充时,可以采用(1)设计模式动态地给一个对象添加一些额外的职责;当应用程序由于使用大量的对象,造成很大的存储开销时,可以采用(2)设计模式运用共享技术来有效地支持大量细粒度的对象;当想使用一个已经存在的类,但其接口不符合需求时,可以采用(3)设计模式将该类的接口转换成我们希望的接口。
解析:本题考查面向对象设计。装饰模式主要的目的是在无法生成子类的情况下给一个对象动态地增加新的职责;享元设计模式是共享大量细粒度的对象;适配器设计模式则是将已有的接口转换为系统希望的接口形式。