全部科目 > 系统架构设计师 >
2010年下半年 上午试卷 综合知识
第 60 题
知识点 设计模式目录的内容   图形   类库  
关键词 对象   开发  
章/节 设计模式  
 
 
某公司欲开发一套窗体图形界面类库。该类库需要包含若干预定义的窗格(Pane) 对象,例如TextPane、ListPane等,窗格之间不允许直接引用。基于该类库的应用由一个包含一组窗格的窗口组成,并需要协调窗格之间的行为。基于该类库,在不引用窗格的前提下实现窗格之间的协作,应甩开发者应采用(60)最为合适。
 
  A.  备忘录模式
 
  B.  中介者模式
 
  C.  访问者模式
 
  D.  迭代器模式




 
 
相关试题     设计模式 

  第33题    2015年下半年  
某软件公司欲开发一个绘图软件,要求使用不同的绘图程序绘制不同的图形。在明确用户需求后,该公司的架构师决定采用Bridge模式实现该软件,并设计UML类图如下图所..

  第57题    2020年下半年  
创建型模式支持对象的创建,该模式允许在系统中创建对象,而不需要在代码中标识特定类的类型,这样用户就不需要编写大量、复杂的代码来初始化对象。在不指定具体..

  第68题    2025年上半年  
某公司欲开发一门户网站,将公司的各个分公司及办事处信息进行整合。决定采用Composite设计模式来实现公司的组织结构关系,并设计了如下图所示的UML类图。图中与..

 
知识点讲解
· 设计模式目录的内容
· 图形
· 类库
 
        设计模式目录的内容
        Erich Gamma在他的博士论文中总结了一系列的设计模式,做出了开创性的工作。他用一种类似分类目录的形式将设计模式记载下来。我们称这些设计模式为设计模式目录。根据模式的目标(所做的事情),可以将它们分成创建性模式(creational)、结构性模式(structural)和行为性模式(behavioral)。创建性模式处理的是对象的创建过程,结构性模式处理的是对象/类的组合,行为性模式处理类和对象间的交互方式和任务分布。根据它们主要的应用对象,又可以分为主要应用于类的和主要应用于对象的。
        下表是Erich Gamma等总结的23种设计模式,这些设计模式通常称为GoF(Gang of Four,四人组)模式。因为这些模式是在“Design Patterns:Elements of Reusable Object-Oriented Software”中正式提出的,而该书的作者是Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides,这几位作者常被称为“四人组”。
        
        设计模式目录的分类
        
        其中带*模式是关于类的,其他模式是关于对象的。
 
        图形
        UML2.0使用了14种图,列举如下:
        (1)类图(class diagram):描述一组类、接口、协作和它们之间的关系。在面向对象系统的建模中,最常见的图就是类图。类图给出了系统的静态设计视图,活动类的类图给出了系统的静态进程视图。
        (2)对象图(object diagram):描述一组对象及它们之间的关系。对象图描述了在类图中所建立的事物实例的静态快照。和类图一样,这些图给出了系统的静态设计视图或静态进程视图,但它们是从真实案例或原型案例的角度建立的。
        (3)构件图(component diagram):描述一个封装的类和它的接口、端口,以及由内嵌的构件和连接件构成的内部结构。构件图用于表示系统的静态设计实现视图。对于由小的部件构建大的系统来说,构件图是很重要的。构件图是类图的变体。
        (4)组合结构图(composite structure diagram):描述结构化类(例如构件或类)的内部结构,包括结构化类与系统其余部分的交互点。它显示联合执行包含结构化类的行为的构件配置。组合结构图用于画出结构化类的内部内容。
        (5)用例图(use case diagram):描述一组用例、参与者(一种特殊的类)及它们之间的关系。用例图给出系统的静态用例视图。这些图在对系统的行为进行组织和建模时是非常重要的。
        (6)顺序图(sequence diagram,序列图):是一种交互图(interaction diagram),交互图展现了一种交互,它由一组对象或角色以及它们之间可能发送的消息构成。交互图专注于系统的动态视图。顺序图是强调消息的时间次序的交互图。
        (7)通信图(communication diagram):也是一种交互图,它强调收发消息的对象或角色的结构组织。顺序图和通信图表达了类似的基本概念,但每种图所强调的概念不同,顺序图强调的是时序,通信图则强调消息流经的数据结构。
        (8)定时图(timing diagram,计时图):也是一种交互图,它强调消息跨越不同对象或角色的实际时间,而不仅仅只是关心消息的相对顺序。
        (9)状态图(state diagram):描述一个状态机,它由状态、转移、事件和活动组成。状态图给出了对象的动态视图。它对于接口、类或协作的行为建模尤为重要,而且它强调事件导致的对象行为,这非常有助于对反应式系统建模。
        (10)活动图(activity diagram):将进程或其他计算的结构展示为计算内部一步步的控制流和数据流。活动图专注于系统的动态视图。它对系统的功能建模特别重要,并强调对象间的控制流程。
        (11)部署图(deployment diagram):描述对运行时的处理结点及在其中生存的构件的配置。部署图给出了架构的静态部署视图,通常一个结点包含一个或多个部署图。
        (12)制品图(artifact diagram):描述计算机中一个系统的物理结构。制品包括文件、数据库和类似的物理比特集合。制品图通常与部署图一起使用。制品也给出了它们实现的类和构件。
        (13)包图(package diagram):描述由模型本身分解而成的组织单元,以及它们的依赖关系。
        (14)交互概览图(interaction overview diagram):是活动图和顺序图的混合物。
 
        类库
        C++标准库可以分为标准函数库和类库两部分。标准函数库继承自C语言,是由通用的、独立的、不属于任何类的函数组成的。面向对象类库是类及其相关函数的集合。
        C++类库种类繁多,所解决的问题也极其广泛,列举如下:
        (1)STL:C++标准模板库,是一个具有工业强度的,高效的C++程序库。该库提供一些非常实用的容器和算法。
        (2)Boost:C++准标准库,由C++标准委员会库工作组成员发起的,开源跨平台,作为标准库的后备,是C++标准化进程的开发引擎之一。
        (3)MFC:微软基础类库,以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。
        (4)Qt:由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。也可用于开发非GUI程序,例如控制台工具和服务器。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有