面向对象的软件开发

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

可编辑ppt
Leabharlann Baidu第7页
2、面向对象方法的提出
在使用面向对象方法开发的系统之中,系 统结构基于对象间的交互。系统中某一部 分的改变仅仅产生局部影响。
其组成部分如下:
◆ 面向对象分析(OOA) ◆ 面向对象设计(OOD) ◆ 面向对象程序设计(OOP)
即:OOSD = OOA + OOD + OOP。
实例化的对象 对象:Jane
可编辑ppt
第 11 页
3、面向对象方法的基本思想
—符合人类认知规律的软件开发过程
将复杂问题(复杂 对象)划分为一系 列简单的组成部分 (简单对象)
划分
分类
按照对象间的各种相 似性将对象分类
认识各类对象自 身属性及行为
认识对象及类之 间关系
全部事物的 完整认识
可编辑ppt
第 12 页
可编辑ppt
1、什么是对象?
在应用领域中有意义的、与所要解决的问 题有关系的任何事物都可以作为对象,它 既可以是具体的物理实体的抽象,也可以 是人为的概念,或者是任何有明确边界和 意义的东西。例如,一名职工、一家公司、 一个窗口、一座图书馆、一本图书、贷款 和借款等,都可以作为一个对象。
人类对客观事物的认知过程
◆ 从一般到特殊的演绎过程
运输工具
飞机 火车 汽车 轮船 ……
◆ 从特殊到一般的归纳方法
抽象
可编辑ppt
苹果
水果
香蕉

……
第 10 页
3、面向对象方法的基本思想
面向对象方法提供了抽象和归纳的机制
抽象的客观概念 概念:学生
表示
抽象的数据类型 类:学生
抽象
实例化
具体的一组相似客观事物 模拟 实体:Jane、Smith等
MyBook1 : CBook
m_pczName:char* =“程序设计” nTotalPage:int =280 nEdition:int =2 ......
char* GetBookName(); int GetTotalPage(); int GetEdition(); ......
设计中的对象
导致函数接口的日益复杂
可编辑ppt
第6页
2、面向对象方法的提出
面向对象方法把问题论域中的主要实体做 为系统开发的起点,主要考虑对象的行为 而不是必须执行的一系列动作。
在面向对象方法中,对象是数据抽象与过 程抽象的综合。
系统状态保存在各数据抽象所定义的数据 存储中。
控制流包含在各个数据抽象中的操作内, 算法被分布到各种实体中。
可编辑ppt
第8页
3、面向对象方法的基本思想
尽可能模拟人类习惯的思维方式,使开发 软件的方法与过程尽可能接近人类认识世 界解决问题的方法与过程,也就是使描述 问题的问题空间(即问题域)与实现解法 的解空间(即求解域)在结构上尽可能一 致。
可编辑ppt
归纳
演绎
天下乌鸦
一般黑
第9页
3、面向对象方法的基本思想
操作是指该对象可以展现的外部服务,它 描述了对象执行的功能,若通过消息传递, 还可以为其它对象使用。
例如,大型客机可视为对象,它具有位置、 速度、颜色、容量等属性,对于该对象可 施行起飞、降落、加速、维修等操作,这 些操作将或多或少地改变飞机的属性值 (状态)。
可编辑ppt
第 18 页
1、什么是对象?
可编辑ppt
第4页
1、回顾结构化方法
数据抽象、数据结构根据算法步骤的要求 开发,它贯穿于过程,提供过程所要求操 作的信息。
系统的状态是一组全局变量,这组全局变 量保存状态的值,把它们从一个过程传送 到另一个过程。
可编辑ppt
第5页
1、回顾结构化方法
缺点: 1)复用困难 2)牵一发而动全身 3)为了适应变化,要精心设计函数接口,
可编辑ppt
第一讲 面向对象的软件开发
本章要点
• 面向对象技术的发展历史 • 面向对象技术的基础知识 • 面向对象程序设计的优点
可编辑ppt
第2页
可编辑ppt
1、回顾结构化方法
程序设计语言只要顺序、选择和重复三种 形式的控制结构就足以表达出各种其他形 式的结构。
采用过程抽象的方式,把软件视为处理流 ,并定义成由一系列步骤构成的算法。每 一步骤都是带有预定输入和特定输出的一 个过程,把这些步骤串联在一起可产生合 理的稳定的贯通于整个程序的控制流,最 终产生一个简单的具有静态结构的体系结 构。
第 16 页
1、什么是对象?
对象是封装了数据结构及可以施加在这些 数据结构上的操作的封装体,这个封装体 有可以唯一标识它的名字,而且向外界提 供一组服务。
属性(attribute)表示对象的性质,属性 值规定了对象所有可能的状态,一般只能 通过执行对象的操作来改变。
可编辑ppt
第 17 页
1、什么是对象?
对象:电视机
请求开 变更频道 请求关
可编辑ppt
Change Channel
Turn On
Others...
Internal State Others
Turn Off Adjust Volume
调节音量
被封装的行为和状态
第 19 页
2、类的概念
类是具有相同数据结构和相同操作的一组 相似对象的抽象。即表示某些对象在属性 和操作方面的共同特征。
总之,对象是对问题域中某个实体的抽象, 设立某个对象就反映了软件系统保存有关 它的信息,并具有与它进行交互的能力。
可编辑ppt
第 14 页
1、什么是对象?
在不同场合具有不同的含义:
问题空间:所有要研究的客观现实的全体
称为问题空间或问题域,而把要研究的问 题(客观世界中的实体)称之为问题空间 的对象
解空间:所有的解(程序及执行程序的计
算机)组成的集合称为解空间,把解(程 序及执行程序的计算机实体)称做解空间 的对象
可编辑ppt
第 15 页
1、什么是对象?
问题空间对象
可编辑ppt
图书1
书 名:程序设 计
总页数:280 版 本:2 ......
返回书名 返回总页数 返回版本号 ......
分析中的对象
类是在对象之上的抽象,有了类以后,对 象则是类的具体化,是类的实例。
把一组对象的共同特性加以抽象并存贮在 一个类中的能力,是面向对象技术最重要 的一点!
可编辑ppt
第 20 页
3、实例的概念
类是建立对象时使用的“样板”,按照这 个样板所建立的一个个具体的对象,就是 类的实例。
实例是某个具体类所描述的一个具体对象 ,如:“张三”、“李四”是类“中国人 ”的实例。
相关文档
最新文档