软件体系结构试题版本

上传人:wm****3 文档编号:43110004 上传时间:2018-06-04 格式:DOC 页数:14 大小:51KB
返回 下载 相关 举报
软件体系结构试题版本_第1页
第1页 / 共14页
软件体系结构试题版本_第2页
第2页 / 共14页
软件体系结构试题版本_第3页
第3页 / 共14页
软件体系结构试题版本_第4页
第4页 / 共14页
软件体系结构试题版本_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《软件体系结构试题版本》由会员分享,可在线阅读,更多相关《软件体系结构试题版本(14页珍藏版)》请在金锄头文库上搜索。

1、软件体系结构考试试题软件体系结构考试试题1、设计模式一般用来解决什么样的问题( a)A.同一问题的不同表相 B 不同问题的同一表相C.不同问题的不同表相 D.以上都不是2、下列属于面向对象基本原则的是( c )A.继承 B.封装 C.里氏代换 D 都不是3、Open-Close 原则的含义是一个软件实体( a )A.应当对扩展开放,对修改关闭.B.应当对修改开放,对扩展关闭C.应当对继承开放,对修改关闭D.以上都不对4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用( a )模式。A.创建型 B.结构型 C 行为型 D.以上都可以5、要依赖于抽象,不要依赖于具体。即针对接口编程,

2、不要针对实现编程,是( d )的表述A.开-闭原则B.接口隔离原则C.里氏代换原则D.依赖倒转原则6、依据设计模式思想,程序开发中应优先使用的是( a )关系实现复用。A, 委派 B.继承 C 创建 D.以上都不对复用方式:继承和组合聚合(组合委派)7、设计模式的两大主题是( d )A.系统的维护与开发 B 对象组合与类的继承C.系统架构与系统开发 D.系统复用与系统扩展8、单子模式中,两个基本要点( a b )和单子类自己提供单例A .构造函数私有 B.唯一实例C.静态工厂方法 D.以上都不对9、下列模式中,属于行为模式的是( b )A.工厂模式 B 观察者 C 适配器 以上都是10、“不要

3、和陌生人说话” 是( d )原则的通俗表述A.接口隔离 B.里氏代换 C.依赖倒转 D.迪米特:一个对象应对其他 对象尽可能少的了解11、构造者的的退化模式是通过合并( c )角色完成退化的。A.抽象产品 B 产品 C 创建者 D 使用者12、单子(单例,单态)模式类图结构如下:下列论述中,关于”0.1”表述的不正确的是( d )A.1 表示,一个单例类中,最多可以有一个实例.B.”0.1”表示单例类中有不多于一个的实例C.0 表示单例类中可以没有任何实例D.0 表示单例类可以提供其他非自身的实例13、对象适配器模式是( a )原则的典型应用。A.合成聚合复用原则 B.里式代换原则C.依赖倒转

4、原则 D.迪米特法则14、静态工厂的核心角色是(a)A.抽象产品 B.具体产品 C.静态工厂 D.消费者15、下列关于静态工厂与工厂方法表述错误的是:( a )A.两者都满足开闭原则:静态工厂以 if else 方式创建对象,增加需求的 时候会修改源代码B.静态工厂对具体产品的创建类别和创建时机的判断是混和在一起的,这 点在工厂方法中C.不能形成静态工厂的继承结构D.在工厂方法模式中,对于存在继承等级结构的产品树,产品的创建是通 过相应等级结构的工厂创建的。16、在观察者模式中,表述错误的是( c )A.观察者角色的更新是被动的。B.被观察者可以通知观察者进行更新C.观察者可以改变被观察者的状

5、态,再由被观察者通知所有观察者依据被 观察者的状态进行。D.以上表述全部错误。17.对于违反里式代换原则的两个类,可以采用的候选解决方案错误的是:( d )A.创建一个新的抽象类 C,作为两个具体类的超类,将 A 和 B 共同的行为 移动到 C 中,从而解决 A 和 B 行为不完全一致的问题。B.将 B 到 A 的继承关系改组成委派关系。C.区分是“IS-a”还是”Hasa”。如果是“Is-a”,可以使用继承关系,如果是”Hasa”应该改成委派关系D.以上方案错误18.对象组合的有点表述不当的是( d )A. 容器类仅能通过被包含对象的接口来对其进行访问。B. “黑盒”复用,封装性好,因为被包

6、含对象的内部细节对外是不可见。C. 通过获取指向其它的具有相同类型的对象引用,可以在运行期间动态地定义(对象的)组合D.造成极其严重的依赖关系。19.关于继承表述错误的是:( d )A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法。B.泛化类(超类)可以显式地捕获那些公共的属性和方法。特殊类(子类) 则通过附加属性和方法来进行实现的扩展。C.破坏了封装性,因为这会将父类的实现细节暴露给子类。D.继承本质上是“白盒复用”,对父类的修改,不会影响到子类。20.对于依赖倒转的表述错误的是( e )A.依赖于抽象而不依赖于具体,也就是针对接口编程。B.依赖倒转的接口并非语法意义上的接

7、口,而是,一个类对其他对象进行 调用时,所知道的方法集合。C.从选项 B 的角度论述,一个对象可以有多个接口。D.实现了同一接口的对象,可以在运行期间,顺利地进行替换。而且不必 知道所示用的对象是那个实现类的实例。E.此题没有正确答案。21.面向对象的六条基本原则包括:开闭原则,里式代换原则,合成聚合原则以 及(依赖倒转),(迪米特法则),(单一原则),(接口隔离?)。22.在存在继承关系的情况下,方法向(超类)方向集中,而数据向(子类)方 向集中。23.适配器模式,分为类的适配器和对象的适配器两种实现。其中类的适配器采用的是(继承)关系,而对象适配器采用的是(组 合聚合)关系。24.设计模式

8、的基本要素有(名字 ),(意图 ),(问题 ),( 解决方案 ),(参与者与协作者 ),( 实现),(一般性结构)。25.创立型模式的根本意图是要把(对象的创建)和(使用分离)的责任进行分 离,从而降低系统的(耦合度)。26.工厂模式分为(简单工厂),(工厂方法),(抽象工厂)三种类型27.门面模式是(迪米特)法则的典型运用28.MVC 模型的基本工作原理是基于(观察者)模式,实现是基于(命令)模式29.设计模式的思想根源是(开闭)基本原则的宏观运用,本质上是没有任何模式 的,发现模式的人永远是大师,而死守模式的人,最对只能是一个工匠. UML、设计模式(测试题)不定项选择题:1一个软件产品是

9、否成功,因素有( )。l 需求收集是否正确l 体系结构的构建是否合理l 测试是否完全l 软件的管理 2开发过程中最困难的一个环节是( )。人与人之间的交流 3用例是从( 用户 )的观点对系统行为的一个描述。4顺序图所表达的是基于( 时间顺序 )的动态交互。5当需要在项目中定制自己的元素时,可使用( 构造型来定制 )。6表示一个操作中的参数和返回值的数据类型的称呼是( 形构 )。7多重性 5,10 表示( 5 或者 10 )。8在找出了类的继承关系后,通常可以用( 接口 )来表示最上层的基 类。9UML 中的实现是一种特殊类型的继承,因为它是指从一个( 接口 ) 继承。10使用用例的难点在于(

10、用例中各个场景的具体步骤 )。11收集用例的方法是( 交谈 )。12产生类图和得到用例这两个步骤,位于前面的是( 没有固定顺序 )。13面向对象理论中,对象之间发送信号,在 UML 状态图里就是( 事件 )。14顺序图中,动态创建对象表示法的特点是(是在时间线上的某一点创建, 结束时尾部打 X)。15当代软件工程的特点是( )。l 允许各个阶段进行迭代l 各个阶段没有明显的分界线l 允许后期得到的信息返回,使得早期的能够被修改 。16GRAPPLE中最重要的段是( )。l 需求收集l 需求分析l 用例开发l 编码l 测试17设计模式的基本要素有( 名称,目的(意图),解决方案,实施后达到 的效

11、果 )。18当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用( 创建性 )模式。19当我们想将抽象部分和实现部分分离时,可以使用( 桥接 )模式。20当我们想用不同的请求对客户进行参数化时,可以使用( 命令 ) 模式。21当我们想封装不同算法并使它们可相互替换时,可以使用( 策略 ) 模式。22面向对象系统中功能复用的两种最常用技术是( )。l 对象组合(优先使用)l 类继承(限制使用类继承)-产生类爆炸 23面向对象系统中的“黑盒复用”是指( 对象组合 )。24对象组合是通过获得( 抽象类的指针 )而在运行时刻动态定义的。25设计模式中应优先使用的复用技术是( 对象组合 )。26

12、在 Lexi 系统中,我们把所有文档元素都看作是图元,这样,它们就有了相 同的( 接口(也叫类型) )。27Lexi 系统中,我们之所以能对文档采用 Composite 模式,是因为文档的元 素之间有( 递归 (树型结构) )关系。填空题:1软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述活动 ,也不描述 系统怎样开发 ,它只描述系统的 组成元素 及其相互的 交互协作 。2一个 UML 模型只描述了一个系统 要做什么 ,它并没告诉我们系 统是 怎么做 。3接口是可以在整个模型中反复使用的一组行为,是一个没有 属性 而 只有 方法 的类。4多重性指的是,某个类有 多个 个对象可

13、以和另一个类的 1 个对象关联。5当一个类的对象可以充当多种角色时, 自身 关联就可能发生。6在泛化关系中, 子类 可以替代 父类 。也就是说,后者出现 的地方,前者都可以出现。但是反过来却不成立。7最通常的依赖关系是一个类操作的 形构 中用到了 另一个类 的定义。8组成是 强类型 的聚集,因为聚集中的每个部分体只能属于 一个 整体。9实现的符号和继承的符号有相似之处,两者的唯一差别是实现关系用 虚 线 表示,继承关系用 实线 表示。10UML 背后的两个重量级概念是 用例 和 面向对象 。11状态图和类图、顺序图不同之处在于,后两种图能够对 多个对象建立模型,而状态图只是对 1 个对象 建立

14、 模型。12状态图中 3 个常用的动作是 入口动作 、 出口动作和 do 动作,也就是对象处于这个状态时应该做什么 。13顺序图中,消息用 水平箭头线 表示;时间用 垂直虚 线 表示。14当逻辑发生分支时,在顺序图中用 生命线发生的分支表示,在协作图中用 嵌套的序号表示。15顺序图强调的是交互的 时间顺序 ,协作图强调的是交互的 空间关系 和参与交互的对象的 上下文环境 。16GRAPPLE把开发过程分为 5 个 段 ,之中又由许多 动作 组成。17GRAPPLE过程中,得到初步类图是在 需求收集 段,细化类图是在 需求分析 段。18每一个设计模式都集中于一个特定的 设计问题 , 描述了 相互通信的对象或者类 、以及

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号