下载此文档

面向对象基本概念.ppt


文档分类:IT计算机 | 页数:约48页 举报非法文档有奖
1/48
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/48 下载此文档
文档列表 文档介绍
第五章面向对象基本概念
1
提纲
§ 什么是面向对象?
§ 为什么要面向对象?
§ 面向对象基本概念
§ 面向对象软件工程
§ 面向对象基本原则
2
§ 什么是面向对象?
人类认识世界的两个最基本的法则:
分类:任何事物都有其所属的类别,认识事物时首先识别类;(抽象)
组成:复杂事物都是由简单事物组成的。(聚集)
面向对象基本思想:
任何事物都是对象,客观世界是由各种互相联系的对象组成的;
每个对象都有自己的内部状态和运动规律;
不同对象之间相互作用构成了各种各样不同的系统。
3
§ 为什么要面向对象?
1. 面向对象技术采用主体-动作模式来刻画世界,符合人类认识世界的规律。
对于面向对象的用户界面,总是先选定一个界面对象,如一段正文或者一个图标,然后在这个对象上进行操作;
对于面向对象的程序设计语言,先指定接受消息的对象,然后才在对象上执行消息指定的操作;
对于面向对象的分析和设计,也是先确定系统中的实体对象,然后再确定在这些对象上可能实施的操作。
传统的面向过程的程序设计语言最关心的是过程,而过程实施的对象是作为过程参数传递的。面向对象中的数据是主动的,面向过程中的数据是被动的。
人类认识客观世界时也是先主体后动作的。
4
§ 为什么要面向对象?
程序设计方法学要求分析、设计和实现一个系统的方法尽可能地接近认识一个系统的方法。
人类在认识和理解现实世界的过程中,普遍运用着三个构造法则:
(1)区分对象及其属性,例如,区分一棵树和树的大小或空间位置关系。
(2)区分整体对象及其组成部分,例如,区分一棵树和树枝。
(3)不同对象类的形成及区分,例如,所有树的类和所有石头的类的形成和区分。
5
§ 为什么要面向对象?
构造程序常用的方法如下:
功能分解法:
功能分解=功能+ 子功能+ 功能界面
功能分解需要经验
功能及其子功能只是间接地反映问题的实质,即使分析员认为功能划分清楚了,仍然无法验证功能集合是否精确完整地表达了问题需求。
功能经常发生变化,功能的大小(粒度)如何选择?
程序=算法(为主)+数据结构(为辅)[wirth定律]
问题空间和解空间不一致
6
§ 为什么要面向对象?
数据流方法
数据流方法=数据流+数据转移+数据存储+数据字典+加工说明
将世界映射为数据流和加工
类似于事件及对事件的处理
着眼于数据的变换(IPO),容易验证需求描述的准确性,不是简单的功能划分。
分析的时候强调数据流,但是设计的时候强调功能,这样分析和设计之间必然进行转换。因此,问题空间和解空间仍然不一致。
7
§ 为什么要面向对象?
信息模型方法(实体关系图,语义数据模型)
信息模型方法=实体+实体属性+实体关系+抽象实体+关联实体
没有描述实体的服务
没有描述实体之间发送消息的动态行为,只描述了静态的关联。
扩展ER图才描述实体的分类和组成结构
面向对象方法
面向对象方法=对象(属性及其服务)+分类+继承+消息
对象将属性和服务封装在一起
直接从问题空间映射为解空间
8
§ 为什么要面向对象?
系统的易变性和稳定性
功能数据流实体对象(过程抽象数据抽象)
需求容易变;
外部界面容易变;
数据属性容易变;
问题空间中的对象是稳定的。
面向对象将系统变化限制在对象范围内,并加以控制,变化对系统的影响范围小。
9
§ 为什么要面向对象?
对象工程的wirth定律
程序=(算法)+(数据结构)
程序=(算法+数据结构)
对象=(算法+数据结构)
程序= 对象+对象+……+对象
面向对象并不排除功能划分,只不过功能划分的角度是站在外部使用者角度的,而且这些功能最终要分配到主体对象上。
10

面向对象基本概念 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数48
  • 收藏数0 收藏
  • 顶次数0
  • 上传人762357237
  • 文件大小444 KB
  • 时间2018-10-14