管理信息系统第九章 面向对象的分析与设计

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

三、 消息和消息传递
-4
using System.Data.SqlClient; public partial class _Default : System.Web.UI.Page { SqlConnection conn; protected void Page_Load(object sender, EventArgs e) { string str = "server=localhost;integrated security=SSPI;database=xk"; conn = new SqlConnection(str); } protected void DelButton_Click(object sender, EventArgs e) { conn.Open(); string delestudent= "delete from student where sno='" + this.TextBox1.Text + "' or sname='" + this.TextBox2.Text + "'"; SqlCommand comanddel = new SqlCommand(delestudent, conn); comanddel.ExecuteNonQuery(); conn.Close(); } }
二、类的基本概念
类的使用
-1
例如: 芒果、苹果和桔子都是fruit类的对象。 类是用户定义的数据类型,但在一个程序设 计语言中,它和内建的数据类型行为相同。 比如创建一个类对象的语法和创建一个整数 对象的语法一模一样。 int a; 如果fruit被定义为一个类,那么语句 fruit apple; 就创建了一个fruit类的对象apple。
不同点
处理问题时的出发点不同。 处理问题的基本单位和层次逻辑关系不 同。 数据处理方式与控制程序方式不同。 分析设计与编码转换方式不同。
第九章 面向对象的分析与设计
第一节 面向对象的基本概念 第二节 面向对象的建模工具UML 第三节 面向对象的分析与设计过程
面向对象的起源
三、 消息和消息传递
-3
传送对象


<操作名,参数>
消息传递模型
接 口
接收对象
三、 消息和消息传递
-4
using System.Data.SqlClient; public partial class _Default : System.Web.UI.Page { SqlConnection conn; protected void Page_Load(object sender, EventArgs e) { string str = "server=localhost;integrated security=SSPI;database=xk"; conn = new SqlConnection(str); } protected void DelButton_Click(object sender, EventArgs e) { conn.Open(); string delestudent= "delete from student where sno='" + this.TextBox1.Text + "' or sname='" + this.TextBox2.Text + "'"; SqlCommand comanddel = new SqlCommand(delestudent, conn); comanddel.ExecuteNonQuery(); conn.Close(); } }
面向对象方法由三部分组成: OOA(Object-Oriented Analysis)面向对象的分析 OOD(Object-Oriented Design)面向对象的设计 OOP (Object-Oriented Program)面向对象的程序设 计 过程是在系统所要求解的问题中找出对象(属性和行为) OOA
第九章 面向对象的分析与设计
什么是面向对象方法
就是主张从客观世界固有的事物出发 来构造系统,提倡用人类在现实生活中 常用的思维方法来认识、理解和描述客 观事物,强调最终建立的系统能够映射 问题域,也就是说,系统中的对象以及 对象之间的关系能够如实地反映现实世 界中事物及其关系。
什么是面向对象方法
二、类的基本概念
-2
类与对象 对象与类的关系相当于一般程序设计语言中 变量和变量所具有的类型的关系。
ห้องสมุดไป่ตู้、类的基本概念
类名
人 文件
-3
类图
属性
运算
姓 名:字符串 年 龄: 整 型
改换工作 改换地址
文件名 文件大小 最近更新日期
打印
对象类的描述
(李军:人)
对象图
李军 24
(张红兵: 人) 张红兵 28
第一节 面向对象的基本概念
面向对象方法的优越性
• 与人类思维方式一致 • 可重用性好 • 易于维护
第一节 面向对象的基本概念
本节内容: 一、对象的基本概念 二、类的基本概念 三、消息及消息传递 四、继承的基本概念 五、面向对象的含义
一、对象的基本概念
-1
在面向对象的系统中,对象是基本的运行实体,是由一 组数据和施加于这些数据上的一组操作封闭而成的。 构成对象的基本要素: 标识:即是对象的名称,用来在问题域中区分其它对 象; 数据:描述对象属性的数据或数据结构,表明对象的 一个状态; 操作:即对象的行为。分为对象自身承受的操作和施 加于其它对象的操作; 接口:主要指对外接口,是指对象受理外部消息所指 定的操作名称集合。
面向对象的基本思想是现实世界看成是对象 的集合。按照以下4个概念设计和实现的系 统,称为是面向对象的。 面向对象=对象 (object) +类 (classification) +继承(inheritance) +通信 (communication with messages)
什么是面向对象方法
面向对象的起源
正是通过Smalltalk80的研制与推广 应用,使人们注意到OO方法所具有的模 块化、信息封装与隐蔽、抽象性、继承 性、多样性等独特之处,这些优异特性 为研制大型软件、提高软件可靠性、可 重用性、可扩充性和可维护性提供了有 效的手段和途径。
第一节 面向对象的基本概念
OOP思路是从对象入手,需要相应的面向对 象的分析和设计方法。 因此80年代末期开始出现面向对象的分析 (Object-Oriented Analysis,OOA)、面 向对象的设计(Object-Oriented Design, OOD)等涉及系统开发其他环节的方法和技 术。 OOA,OOD,与OOP结合在一起形成了一 种新的开发方法------面向对象(ObjectOriented,OO)方法
以及它所属的类,并定义对象与类;
OOD是把系统所要求解的问题分解为一些对象及对象间传
递消息的过程;
结构化方法VS面向对象方法
结构化方法
面向对象方法
面向对象分析方法 面向对象设计方法 面向对象编程方法
结构化分析方法 结构化设计方法 结构化编程方法
结构化方法
结构化分析 面向数据流的分析方法 结构化设计 将数据流程图转换为模块结构图 根据E-R图及数据字典设计数据库 系统功能的实现靠模块之间的调用实 现
面向对象方法
面向对象分析 以对象为中心,把现实事物看成为对象,分 析对象的特征和行为,对象抽象为类。 面向对象设计 通过对象的特征及行为确定类的属性和方法 系统功能的实现靠对象之间的消息传递实现
相同之处
都是软件系统的开发方法。 在运用分解和抽象原则上的要求是完全 一致的 局部化和重用性设计上的一致。
二、类的继承 -2
类的层次
例如,飞机和交通工具都是类,它们之间的关系是“is a”关系,飞机是 一种特殊的交通工具。 通常,越上层的类越具有一般性和共性,越下层的类越特殊、越具体。
B
继承 继承部分 增加部分 A
简单继承
B1

Bn
继承
继承
A
多重继承
三、 消息和消息传递
-1
面向对象的世界是通过对象与对象间彼此的相互合作来推动 的,消息是对象之间的通信载体。 消息就是向对象发出的服务请求(互相联系、协同工作等)。 对象之间的联系可表示为对象间的消息传递,即对象间的通 讯机制。 消息具有如下几个性质: 同一对象可以接收不同形式的多个消息,产生不同响应。 一条消息可以发送给不同的对象,消息的解释完全由接 收对象完成,不同对象对相同形式的消息可以有不同解 释。 与传统程序调用不同,对于传来的消息,对象可以返回 相应的回答信息,也可以不返回,即消息响应不是必须 的。
对象的描述
二、类的基本概念
抽象
-4
类:教师
属性:姓名 年龄 单位 职称 工资 方法名:调工资 评职称 受 聘 方法:调工资 (计算公式) 评职称 (步骤、条件) 数 据 结 构
实例 抽象 实例
对象:李伟
状态:李伟 25 计算机系 讲师 900 方法名:调工资 评职称 受 聘 数 据 值
抽象 方法名(参数)
一、对象的基本概念
对象名 属性 方法
-2
对象
二、类的基本概念
-1
类又称对象类(Object Class),是一组 具有相同属性和相同操作的对象的集合。 在一个类中,每个对象都是类的实例 (instance) ,它们都可以使用类中提供的 函数。类具有属性,用数据结构来描述类 的属性,类具有操作,它是对象的行为的 抽象,操作实现的过程称为方法 (method) ,方法有方法名,方法体和参 数。
面向对象的起源
60年代中后期,Simula将ALGOL的块结构概 念向前发展一步,提出了对象的概念,并使用 了类,也支持类继承。70年代,Smalltalk语言 诞生,它取Simula的类为核心概念,由Xerox 公司经过对Smautalk72、76持续不断的研究和 改进之后,于1980年推出商品化的,它在系统 设计中强调对象概念的统一,引入对象、对象 类、方法、实例等概念和术语,采用动态联编 和单继承机制。
执行 的 操作
方 法 体
人事处向对象发消息 李伟.调工资(•••••• )
对象、类和消息传递
二、类的继承 -1
类的层次
实际应用中,事物分类很难一蹴而就,往往要先进行粗
分类,再进一步细分,最终使分类相互联系而形成完整系统结 构.继承是类之间的重要关系,依赖继承机制,可由类产生对象, 或由已知类定义其它类. 继承是指一个类(即称子类)因承袭而具有另一个类 (或称父类)的能力和特征的机制或关系。 有继承关系的类之间应具有如下特性: 类间具有共享特征(包括数据和程序代码的共享); 类间具有细微的差别或新增部分(包括非共享程序代码 和数据); 类间具有层次结构。
四、 面向对象的含义
面向对象是一种认识客观世界的认知方法学 这种认识方法将客观世界看成是由许许多多不同对象构 成的,每一个对象都有自己的运动规律和内部状态,不 同对象间的相互作用和通讯构成了完整的客观世界。 面向对象亦是一种解决问题的思维方法 从组织结构模型化客观世界,将对象作为需求分析和系 统设计的核心或主体,把整个问题域抽象成为相互通讯 的一组对象集合,并引用科学方法论中的分类思想,将 相似或相近的一组对象聚合成类,采用各种手段将相似 的类组织起来,实现问题空间到解空间的映射。

OO方法起源于面向对象的编程语言(简 称为OOPL)。50年代后期,在用FORTRAN 语言编写大型程序时,常出现变量名在程序不 同部分发生冲突的问题。鉴于此,ALGOL语 言的设计者在ALGOL60中采用了以 "Begin……End"为标识的程序块,使块内变 量名是局部的,以避免它们与程序中块外的同 名变量相冲突。这是编程语言中首次提供封装 (保护)的尝试。此后程序块结构广泛用于高 级语言如Pascal 、Ada、C之中。
二、面向对象方法的系统开发生命周期
从宏观层面看,面向对象的系统开发方法包括 分析、设计、实现以及运行与维护等四大阶段, 遵循反复累增的生命周期,如图9.3所示。 从微观层面上看,面向对象的系统开发方法是 指每一宏观阶段中标识对象,确定对象的属性, 定义对象的服务,以及确定对象间关系等几个 步骤。
相关文档
最新文档