软工题第六章

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第六章习题

一、选择题

1. 对象是面向对象范型的(A )。每个对象可用它自己的一组(B )和它可以执行的一组( C )来表征。应用执行对象的( C )可以改变该对象的( B )。它的应用必须通过( D )的传递。可以认为,这种( D )的传递大致等价于过程性范型中的函数调用。某些语言提供了特殊功能,允许对象引用自己。若一个对象没有显式

地被引用,则可让该对象

(供选择的答案: A. ①

基本单位

E )。

② 最小单位③ 最大单位

② 功能③ 操作④ 语法单位

B ~ C.①行为④数据⑤属

D. ①接口②消息③信息④操作⑤ 过程

E. ①撤消② 歇着③ 缺省④ 隐式引用⑤引用自己

2. 在面向对象软件开发过程中特别重视复用。软件构件应独立于当初开发它们的应用而存在。在以后的应用开发中,可以调整这些独立构件以适应新问题的需要。因此,应使得类成为一个

( A )的单元。这样就有一个( B )生存期问题。( B )生存期有自己的步骤,与任一特定应用的开发( C )。按照这些步骤,可以完整地描述一个基本( D )。而不仅仅考虑当前正在开发的系统。系统开发的各个阶段都可能会标识新的类。随着各个新类的标识,( B )生存期引导开发工作逐个阶段循序渐进。

在设计与实现类时,应尽可能利用既存类提供为当前应用所需要的功能,利用既存类的

三个可能途径是:(E)复用既存类;对既存类进行(F)以得到满足要求的类;

重新开始进行开发。

供选择的答案:

A. ① 可复用② 可测试③可适用④可靠

B. ① 应用②寿命③类④软件

C. ① 相关② 密切相关③ 负相关④无关

D. ① 概念②实体③事件④ 事情

E, F. ① 修改② 更新③照原样④演

3 从分析到设计的过程流如图所示。一旦已经开发完成一个合理完整的( A )模型后,就要着手( B )的设计。这需要描述( B )的特征,以准确表达待实现的用户需求,以及实现需求所必须

的支持环境。一旦定义了各个( B ),就开始( C )设计,这时,可利用CRC卡片,将属性转换为(D ),将关系转换为(E )。

供选择的答案:

② 系统设计③ 模块设计④

A ~ C. ① 分析子系

统设计

⑤ 对象设计⑥ 数据设计⑦ 操作设计⑧ 行为设计 D ~ E. ① 对象② 数据结构③ 算法④消息传递

⑤ 控制⑥ 并发处理⑦ 进程⑧过程

二、简答题

1. 用面向对象范型开发软件时与用结构化范型开发软件时相比较,软件的生命周期有何不同这种差异带来了什么后果

2. 为什么在开发大型软件时,采用面向对象范型比采用结构化范型较易取得成功

3. 为什么说夏利牌汽车是小汽车类的特化,而发动机不是小汽车类的特化

4. 对象和属性之间有何区别

5. 什么是对象它与传统的数据有何异同

6. 什么是模型开发软件时为什么要建立模型

7. 试用面向对象方法分析设计下述程序:

在显示器屏幕上圆心坐标为(100,100)的位置有一个半径为40 的圆,在圆心坐标为(200,300)的位置画一个半径为20 的圆,在圆心坐标为(400,150)的位置画一条弧,弧的起始角度为30度,结束角度为120 度,半径为50.

8. 用面向对象方法解决下述问题时需要哪些对象类类与类之间有何关系

在显示器屏幕上圆心坐标为(250,100)的位置,画一个半径为25 的小圆,圆内显示字符串“ you” ;在圆心坐标为(250, 150)的位置,画一个半径为100的中圆,圆内显示字符串

“ world ”;再在圆心坐标为(250,250)的位置,画一个半径为225的大圆,圆内显示字符串“ Universe ”。

9. 试建立下述订货系统的用例模型。假设一家工厂的采购部每天需要一张订货报表,报表按零件

编号排序,表中列出所有需

要再次订货的零件。对于每个需要再次订货的零件应该列出下列数据:零件编号, 零件名称, 订货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的终端把事务报告给订货系统。当某种零件的库存数量少于库存量临界值时就应该再次订

10. 为什么说面向对象方法与人类习惯的思维解题方法比较一致

第六章习题习题

一、选择题

1. 答案:A.①, B.⑤, C.③,D. ② E.③

分析:对象是面向对象范型的基本单位。每个对象可用它自己的一组属性和它可以执行的一组操作来表征。应用执行对象的操作可以改变该对象的属性,属性一般只能通过操作来

改变。它的应用必须通过消息的传递。发送给一个对象的消息定义了一个方法名和一个参数表(可能是空的),并指定某一个对象。而由一个对象接收的消息则引用消息中指定的方法的代码,并将实际参数与参数表中相应的形式参数结合起来。接收对象对消息的处理可能会

改变对象中的状态,即改变接收对象的属性,并发送一个消息给自己或另一个对象。可以认为,这种消息的传递大致等价于过程性范型中的函数调用。然而,执行方法得到消息结果的

目的是想修改相关对象的内部状态,而不只是修改变元并返回它们。某些语言提供了特殊功

能,像Smalltalk 提供了self,允许对象引用自己。若一个对象没有显式地被引用,则可让该对象缺省。

2. 答案:A.①, B.③, C.④, D.②, E.③, F.④

分析:在面向对象软件开发过程中特别重视复用。软件构件应独立于当初开发它们的应用而存在。构件的开发瞄准某些局部的设计和实现,它们可用于当前问题的解决,但为了在

以后的项目中使用,它们还应当足够通用。在以后的应用开发中,可以调整这些独立构件以适应新问题的需要。为使得类成为一个可复用的单元,有一个类生存期的问题。

Si

类生存期与应用生存期交叉。在应用生存期的每一个阶段都可做类的标识。类生存期有自己的步骤,与任一特定应用的开发无关。按照这些步骤,可以完整地描述一个基本实体。而不仅仅考虑当前正在开发的系统。系统开发的各个阶段都可能会标识新的类。随着各个新类的标识,类生存期引导开发工作逐个阶段循序渐进。

在设计与实现类的时候,有三种利用既存类的途径:

相关文档
最新文档