2011面向对象课后题答案.docVIP

  • 1
  • 0
  • 约1.73万字
  • 约 14页
  • 2026-02-05 发布于河北
  • 举报

PAGE

PAGE9

i1.传统软件开发方法存在哪些问题?

在二十世纪六十年代,软件系统都是较小且相对简单的,所用的编程语言也都是十分简单的语言,时兴个人英雄注意,即崇尚程序员的个人技能。代码是面条式的,特别是代码中含有GOTO语句

随着软件复杂性的增长,随心所欲的方法就不再是可接受的了,因为这样的代码是很难维护的。高层次语言的引入有助于解决一些与复杂性有关的问题,但这些语言并不是充分的。那时,无开发方法而言。

2.面向对象方法有哪些特点?

(从问题域中客观存在的事物出发来构造软件系统,用对象作为对这些事物的抽象表示,并作为系统的基本构成单位。(对象)

用对象的属性表示事物的状态特征;用对象的服务(操作)表示事物的动态特征。(属性与服务)

对象的属性与服务结合为一体,成为一个独立的、不可分的实体,对外屏蔽其内部细节。(封装)

对事物进行分类。把具有相同属性和相同服务的对象归为一类,类是这些对象的抽象描述,每个对象是它的类的一个实例。(分类)

通过在不同程度上运用抽象的原则可以得到较一般的类和较特殊的类。特殊类继承一般类的属性与服务,从而简化系统的构造过程及其文档。(继承)

复杂的对象可以用简单的对象作为其构成部分。(聚合)

对象之间通过消息进行通讯,以实现对象之间的动态联系。(消息)

通过关联表达对象之间的静态关系。(关联)

采用多态机制允许老代码调用新代码;把具有共同基类的对象组成一组,并对它们进行一致的处理(多态性))

总结:用类和对象作为系统的基本构成单位。对象对应问题域中的事物,其属性与服务刻画了事物的静态特征和动态特征,它们之间的继承关系、聚合关系、消息和关联如实地表达了问题域中事物之间实际存在的各种关系。因此,无论系统的构成成分,还是通过这些成分之间的关系而体现的系统结构,都可直接地映射问题域。

3.试比较传统方法与面向对象方法。

传统方法

数据结构+算法=程序设计

数据

操作

类型与变量

函数调用

类型与子类型

构造类型

指针

面向对象方法

以对象为中心组织数据与操作

对象的属性

对象的服务

类与对象实例

消息传送

一般类与特殊类,继承

整体-部分结构(聚合)

关联

不同点——面向对象的思想观念:从对象出发认识问题域;

构造策略:以对象作为构成系统的基本单位,将对象的数据与操作紧密结合;

保证机制:由支持封装、继承、多态的机制保证其原则的实现。

4.什么是OOA?OOA面临哪些主要问题?

面向对象的分析(OOA),就是运用面向对象方法进行系统分析。是从编程领域向分析领域发展与延伸的产物。

面临主要问题:(1)问题域和系统责任复杂性日益增长(2)交流问题(3)需求的不断变化。(4)软件复用的要求

较全面的答案:面向对象的分析(OOA),就是运用面向对象方法进行系统分析。是从编程领域向分析领域发展与延伸的产物。

OOA是分析,是软件生命周期的一个阶段,具有一般分析方法共同具有的内容、目标及策略;但强调运用面向对象方法进行分析,用面向对象的概念和表示法表达分析结果。基本任务是:运用面向对象方法,对问题域和系统责任进行分析和理解,找出描述问题域及系统责任所需的对象,定义对象的属性、服务以及它们之间的关系。目标是建立一个符合问题域、满足用户需求的OOA模型。

面临的主要问题:

1.问题域(problemdomain)和系统责任复杂性日益增长困难所在:被开发系统的应用领域,即在现实世界中由这个系统进行处理的业务范围。系统责任(systemresponsibilities):所开发的系统应该具备的职能。

2、交流问题

如果分析所产生的文档使分析员以外的其他人员都很难读懂,那就很不利于交流。这会使彼此的思想不易沟通,并容易隐藏许多错误。(分析人员与客户**及领域专家,分析人员之间*,分析人员与设计人员)

3、需求的不断变化

引起需求变化的因素:用户(主客观因素)、竞争因素、经费、技术因素*软件开发者必须以合作的态度满足用户需求易变的部分依次为:功能、接口、属性、对象得益于封装原则。

4、软件复用的要求

复用级别提高——分析结果复用要求分析模型中的可复用部分用于多个系统要求一个分析模型在多种条件下设计和实现,对分析提出了更高的要求:制作构件、组织构件、检索构件、组装构件

5.OOA如何适应面临的挑战?

1).是否有利于对问题及系统责任的理解

要求分析方法采用与问题域一致的概念、术语及系统成分,产生一个较好地映射问题域、准确反映系统责任的系统模型。

2).是否有利于人员之间交流

要求分析方法使用与问题域一致的概念及术语,尽可能体现人类的日常思维方式,使各类人员具有共同语言*。

3).对需求变化的适应性

要求分析方法把系统中最容易变化的因素隔离起来,并使系统的各个单元之间接口尽可能少。即把需求变化所引起的影响局部化。

文档评论(0)

1亿VIP精品文档

相关文档