面向对象方法学概述精品PPT课件
合集下载
第三篇 面向对象方法学PPT课件
4
结构化方法学与面向对象方法学
假如数据结构复杂且变换并不多,那么 如以过程主导分析和设计,一旦有系统 变更就会给下游开发带来极大混乱。
由于对过程的理解不同,面向过程的功 能细分所分割出的功能模块有时会因人 而异。而面向对象的对象细分,从同一 问题领域的对象出发,不同人得出相同 结论的比率较高。
分成两类。
圆 圆心坐标 半径 可见性 显示() 隐藏
弧 圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
16
17
设计类等级
除了把对象分类之外,还应该进一 步按照子类(派生类)与父类(基 类)的关系,把若干个相关的对象 类组成一个层次结构的系统(类等 级)。
在这种层次结构中,下层的派生类 自动具有和上层基类相同的特定 (包括数据和操作),这种现象称 为继承。
(3)按照子类与父类的关系,把若干个 对象类组织成一个层次结构的系统(类 等级)。
23
面向对象方法学的要点
(4)对象之间仅能通过传递消息互相通信。
“面向对象=对象+类+继承+消息”
24
面向对象方法学过程
一般说来,使用面向对象方法学开发软件时, 工作重点应该放在生命周期中的分析阶段。这 种方法在开发的早期阶段定义了一系列面向问 题的对象,并且在整个开发过程中不断充实和 扩充这些对象。
25
面向对象方法学过程
迭代是软件开发过程中普遍存在的 一种内在属性。经验表明,软件过 程各个阶段之间的迭代或一个阶段 内各个工作步骤之间的迭代,在面 向对象范型中比在结构化范型中更 常见,也更容易实现。
喷泉模型是典型的面向对象生命周 期模型。
26
6.3 面向对象方法学的主要优点
与人类习惯的思维方法一致 面向对象的软件开发过程从始至终都围绕着建
结构化方法学与面向对象方法学
假如数据结构复杂且变换并不多,那么 如以过程主导分析和设计,一旦有系统 变更就会给下游开发带来极大混乱。
由于对过程的理解不同,面向过程的功 能细分所分割出的功能模块有时会因人 而异。而面向对象的对象细分,从同一 问题领域的对象出发,不同人得出相同 结论的比率较高。
分成两类。
圆 圆心坐标 半径 可见性 显示() 隐藏
弧 圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
16
17
设计类等级
除了把对象分类之外,还应该进一 步按照子类(派生类)与父类(基 类)的关系,把若干个相关的对象 类组成一个层次结构的系统(类等 级)。
在这种层次结构中,下层的派生类 自动具有和上层基类相同的特定 (包括数据和操作),这种现象称 为继承。
(3)按照子类与父类的关系,把若干个 对象类组织成一个层次结构的系统(类 等级)。
23
面向对象方法学的要点
(4)对象之间仅能通过传递消息互相通信。
“面向对象=对象+类+继承+消息”
24
面向对象方法学过程
一般说来,使用面向对象方法学开发软件时, 工作重点应该放在生命周期中的分析阶段。这 种方法在开发的早期阶段定义了一系列面向问 题的对象,并且在整个开发过程中不断充实和 扩充这些对象。
25
面向对象方法学过程
迭代是软件开发过程中普遍存在的 一种内在属性。经验表明,软件过 程各个阶段之间的迭代或一个阶段 内各个工作步骤之间的迭代,在面 向对象范型中比在结构化范型中更 常见,也更容易实现。
喷泉模型是典型的面向对象生命周 期模型。
26
6.3 面向对象方法学的主要优点
与人类习惯的思维方法一致 面向对象的软件开发过程从始至终都围绕着建
面向对象技术概述.pptx
面向对象方法的目的在于使分析、设计和实现一个软件系 统的过程与人类认识这个系统的过程同步,使用与人类认知 规律相近的方法和方式进行软件开发工作。
面向对象=对象+类+继承+通信
1.1.1 人类认知规律 1.1.2 面向对象基本原理 1.1.3 认知规律与面向对象 1.1.4 面向对象软件开发
第2页/共54页
类“职员”和“学生”的任何实例都具有类“人” 的属性和行为,即任一职员或学生都是“人”的一个 实例,因此类“人”相对类“职员”和“学生” 是具 有一般性质的类。“职员”和“学生”两类相对类 “人” 具有特殊性,它们之间构成一般特殊关系。
第14页/共54页
形式化的属性与 行为描述,风格 接近实现代码
2024/10/9
14
1.2.1 对象-3/5
1.对象的形态与静态特征(2)
Class CBook { char m_pczName; int m_nPages; int m_nEdition; …… } …… CBook b;
程序中的 类与对象
人们往往根据对象之间的各种关系去认识和描述一个复杂对象或系 统,因此,描述对象之间的各种静态联系将形成系统的内部结构。
对象间相互联系可以分类,这种划分与观察问题的角度有关,面向 对象方法学根据人类认知规律,将这些关系划分为一般-特殊、整体-部 分、实例链接三类。与此相应,具有上述关系的对象在系统或复杂对象 内部形成相应结构:一般与特殊结构、整体与部分结构以及关联结构。
[打印机忙] 暂存(文件)
e v e n t1
1
2
e v e n t2 3
2024/10/9
使用事件踪迹图描 受外界影响后属
性的变化
返回消息与事 件
面向对象=对象+类+继承+通信
1.1.1 人类认知规律 1.1.2 面向对象基本原理 1.1.3 认知规律与面向对象 1.1.4 面向对象软件开发
第2页/共54页
类“职员”和“学生”的任何实例都具有类“人” 的属性和行为,即任一职员或学生都是“人”的一个 实例,因此类“人”相对类“职员”和“学生” 是具 有一般性质的类。“职员”和“学生”两类相对类 “人” 具有特殊性,它们之间构成一般特殊关系。
第14页/共54页
形式化的属性与 行为描述,风格 接近实现代码
2024/10/9
14
1.2.1 对象-3/5
1.对象的形态与静态特征(2)
Class CBook { char m_pczName; int m_nPages; int m_nEdition; …… } …… CBook b;
程序中的 类与对象
人们往往根据对象之间的各种关系去认识和描述一个复杂对象或系 统,因此,描述对象之间的各种静态联系将形成系统的内部结构。
对象间相互联系可以分类,这种划分与观察问题的角度有关,面向 对象方法学根据人类认知规律,将这些关系划分为一般-特殊、整体-部 分、实例链接三类。与此相应,具有上述关系的对象在系统或复杂对象 内部形成相应结构:一般与特殊结构、整体与部分结构以及关联结构。
[打印机忙] 暂存(文件)
e v e n t1
1
2
e v e n t2 3
2024/10/9
使用事件踪迹图描 受外界影响后属
性的变化
返回消息与事 件
第三篇 面向对象方法学PPT课件
9
的方法学,任何方 法学都有其局限性,所以软件开发人员大可不 必拘泥于某种特定的方法学。
10
第6章 面向对象方法学导论
面向对象程序设计实例 现向对象方法学概述 面向对象方法学的主要优点 面向对象的概念
11
一个简单的图形程序的需求
在显示器荧光屏上圆心坐标为(100,100)的 位置画一个半径为40的圆,在圆心坐标为 (200,300)的位置画一个半径为20的圆, 在圆心坐标为(400,150)的位置画一条弧, 弧的起始角度为30°,结束角度为120°,半径 为50.
14
用面向对象的方式怎样解决问题?
本问题中涉及两类实体(对象):圆和弧
圆类的两个实例、弧类的一个实例(所谓实例
即具体的对象)
弧
圆 圆心坐标 半径 可见性 显示() 隐藏
圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
15
6.2 设计类等级
这个简单的图形程序需要使用圆类和弧类这两
类对象,也就是说,我们把该程序中的对象划
第三篇 面向对象方法学
所谓方法学是指组织软件生产过程的一 系列方法、技术和规范。 是软件开发者长年失败和成功经验的理 论性总结。
1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
2
面向对象方法学的基本思想
分成两类。
圆 圆心坐标 半径 可见性 显示() 隐藏
弧 圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
16
17
设计类等级
除了把对象分类之外,还应该进一 步按照子类(派生类)与父类(基 类)的关系,把若干个相关的对象 类组成一个层次结构的系统(类等 级)。
的方法学,任何方 法学都有其局限性,所以软件开发人员大可不 必拘泥于某种特定的方法学。
10
第6章 面向对象方法学导论
面向对象程序设计实例 现向对象方法学概述 面向对象方法学的主要优点 面向对象的概念
11
一个简单的图形程序的需求
在显示器荧光屏上圆心坐标为(100,100)的 位置画一个半径为40的圆,在圆心坐标为 (200,300)的位置画一个半径为20的圆, 在圆心坐标为(400,150)的位置画一条弧, 弧的起始角度为30°,结束角度为120°,半径 为50.
14
用面向对象的方式怎样解决问题?
本问题中涉及两类实体(对象):圆和弧
圆类的两个实例、弧类的一个实例(所谓实例
即具体的对象)
弧
圆 圆心坐标 半径 可见性 显示() 隐藏
圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
15
6.2 设计类等级
这个简单的图形程序需要使用圆类和弧类这两
类对象,也就是说,我们把该程序中的对象划
第三篇 面向对象方法学
所谓方法学是指组织软件生产过程的一 系列方法、技术和规范。 是软件开发者长年失败和成功经验的理 论性总结。
1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
2
面向对象方法学的基本思想
分成两类。
圆 圆心坐标 半径 可见性 显示() 隐藏
弧 圆心半径 半径 起始角度 结束角度 可见性 显示 隐藏
16
17
设计类等级
除了把对象分类之外,还应该进一 步按照子类(派生类)与父类(基 类)的关系,把若干个相关的对象 类组成一个层次结构的系统(类等 级)。
面向对象方法概述精品PPT课件
杭州人 Attributes 杭州人 Methods
张山 (instance)
Class 中国人 张山的 Attributes
李士 (instance) Class 杭州人 中国人李士的 Attributes 杭州人李士的 Attributes
则可以认为这个软件系统是面向对象的。
1.3.5 面向对象方法及其工作模型
面向对象的方法的代表性成果有: 1、B.Henderson-sellers 和 J.m.Edwards提出的面向对象软件 生存期喷泉模型及面向对象的系统开发方法。 2、G.Booch提出的面向对象的开发方法。 3、P.Coad和E.Yourd提出的OOA和OOD法。 4、J. Rumbaugh等人提出的对象建模技术(OMT)。 5、Jacobson 提出的面向对象的软件工程(OOSE)。 6、G.booch J.Rumbough Jacobson等人在Booch方法、OMT 和OOSE的基础上推出了统一建模语言UML。
模型分类续
2、OOD 法 在需求分析的基础上,进一步解决“如何作”的问题,
OOD 法也分为概要设计和详细设计。
概要设计:细化对象行为,添加新对象,认定类,组类 库,确定外部接口及主要数据结构
详细设计:加细对象描述
3、OOP 法 使用面向对象的程序设计语言,如C++进行程序设计。 Coad和Yourdon给出一个面向对象的定义: 面向对象=对象+类+继承+消息 ,
由于对象是类的实例,在进行分析和设计时,通常把注 意力集中在类上,而不是具体的对象上。
6.1.2 面向对象的概念
对象和类的描述
对象和类的描述
对象和类一般采用“对象图” 和 “类图” 来描述。
张山 (instance)
Class 中国人 张山的 Attributes
李士 (instance) Class 杭州人 中国人李士的 Attributes 杭州人李士的 Attributes
则可以认为这个软件系统是面向对象的。
1.3.5 面向对象方法及其工作模型
面向对象的方法的代表性成果有: 1、B.Henderson-sellers 和 J.m.Edwards提出的面向对象软件 生存期喷泉模型及面向对象的系统开发方法。 2、G.Booch提出的面向对象的开发方法。 3、P.Coad和E.Yourd提出的OOA和OOD法。 4、J. Rumbaugh等人提出的对象建模技术(OMT)。 5、Jacobson 提出的面向对象的软件工程(OOSE)。 6、G.booch J.Rumbough Jacobson等人在Booch方法、OMT 和OOSE的基础上推出了统一建模语言UML。
模型分类续
2、OOD 法 在需求分析的基础上,进一步解决“如何作”的问题,
OOD 法也分为概要设计和详细设计。
概要设计:细化对象行为,添加新对象,认定类,组类 库,确定外部接口及主要数据结构
详细设计:加细对象描述
3、OOP 法 使用面向对象的程序设计语言,如C++进行程序设计。 Coad和Yourdon给出一个面向对象的定义: 面向对象=对象+类+继承+消息 ,
由于对象是类的实例,在进行分析和设计时,通常把注 意力集中在类上,而不是具体的对象上。
6.1.2 面向对象的概念
对象和类的描述
对象和类的描述
对象和类一般采用“对象图” 和 “类图” 来描述。
面向对象方法学-PPT
在面向对象得软件技术中,“类”就就是对具有相 同数据与相同操作得一组相似对象得定义,也就就是 说,类就是对具有相同属性与行为得一个或多个对象 得描述,通常在这种描述中也包括对怎样创建该类得 新对象得说明。
以上先详细地阐述了对象得定义,然后在此基础上 定义了类。也可以先定义类再定义对象,例如,可以像 下面这样定义类与对象: 类就是支持继承得抽象数据 类型,而对象就就是类得实例。
由于客观世界中得实体通常都既具有静态得属性,又 具有动态得行为,因此,面向对象方法学中得对象就是 由描述该对象属性得数据以及可以对这些数据施加 得所有操作封装在一起构成得统一体。对象可以作 得操作表示它得动态行为,在面向对象分析与面向对 象设计中,通常把对象得操作称为服务或方法。
1、 对象得形象表示
面向对象方法学得优点
1、 与人类习惯得思维方法一致 传统得程序设计技术就是面向过程得设计方法,这
种方法以算法为核心,把数据与过程作为相互独立得 部分,数据代表问题空间中得客体,程序代码则用于处 理这些数据。
2、 稳定性好
传统得软件开发方法以算法为核心,开发过程基于 功能分析与功能分解。用传统方法所建立起来得软 件系统得结构紧密依赖于系统所要完成得功能,当功 能需求发生变化时将引起软件结构得整体修改。事 实上,用户需求变化大部分就是针对功能得,因此,这样 得软件系统就是不稳定得。
(2)类(class)
现实世界中存在得客观事物有些就是彼此相似得, 例如,张三、李四、王五……虽说每个人职业、性格、 爱好、特长等等各有不同,但就是,她们得基本特征就 是相似得,都就是黄皮肤、黑头发、黑眼睛,于就是人 们把她们统称为“中国人”。人类习惯于把有相似 特征得事物归为一类,分类就是人类认识客观世界得 基本方法。
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注意:UML是一种语言规范而不是一种建模方法
用面向对象方法开发软件,通常需要建立3种形式的模 型:描述系统数据结构的对象模型,描述系统控制结构 的动态模型、描述系统功能的功能模型。 在整个开发过程中,3种模型一直都在发展完善。在面向 对象分析中,构造出完全独立于实现的应用域模型;在 面向对象设计过程中,把求解域的结构逐渐加入到模型 中;在实现阶段,把应用域和求解域的结构编成代码并 进行严格的测试验证
面向对象分析设计方法(OOAD): ▪ 兴起于20世纪80年代,从20世纪90年代起至今它已
经在分析设计领域占据了无可争议的主流地位 ▪ 1997年11月,UML被国际对象管理组织(OGM)采
纳,此后UML成了OOAD建模语言的国际标准。 ▪ UML对于OOAD中的语义、图形表示法和使用规则做
了完整而详细的定义。其建模能力超过了以往任何 OOAD方法,当然复杂性也随之膨胀。 ▪ 真正使UML流行的是Rational公司基于UML的建模 工具Rose。
每次重复都会增加或明确一些目标系统的性质,但却不是对先前工 作结果的本质性改动,这样就减少了不一致性,降低了出错的可能。 P22喷泉模型
面向对象方法的特点
1. 通用组织方法 2. 抽象 3. 封装或信息隐蔽 4. 继承 5. 多态 6. 消息通信 7. 关联 8. 复用
1. 通用组织方法
通用组织方法用于协助组织信息系统模型以及最终编写的软件。包 括: 对象及其属性或者特征。 整体和部分(is a part of)。 类和成员(is a member of) 。 2. 抽象 忽略问题域的无关部分而集中考虑关键部分的原则
第一章 面向对象方法学引论
传统方法学的缺点
僵化的瀑布模型 瀑布模型意味着生命周期各阶段间存在着严
格的顺序性和依赖性;特别强调预定义需求的重 要性。某些类型的系统需求是模糊的。预定义的 需求可能是过时的。对于需求相对稳定的软件来 说,预定义需求是可行的;当软件需求变化比较 大时,提前1年或数年预先指定需求显然是不实 际的。
▪可见性 属性名:类型名=初值{性
质串}
▪可见性:
画图
+(public),-private),#(protected) ▪性质串:
+大小:Size
明确列出该属性所有可能的取值; 或说明属性的其他性质.eg,约束说明
+位置: Position
{只读}
#图片个数:Integer=0 ▪静态属性:
Draw() getCount():Integer
3. 封装和信息隐蔽 是指软件的组成部分(模块、子程序、方法等)应该互相独立或者 隐藏细节。 在面向对象方法中,封装将功能和数据同时装入对象中。
4. 继承
按照子类和父类的关系,把若干对象类组织成一个层次结构的系统。在这种 层次结构中,通常下层的派生类具有和上层的父类相同的特性(包括特
征和方法),这种现象称为继承。
类名的命名规则:
1) 使用在应用域中人们习 惯的标准术语作为类名, 不要随意创造名字
2) 尽量使用能表示类的含 义的日常用语作为类名, 不要使用空洞的或含义 模糊的词作为名字。Eg.” 库房”比“房屋”合适
3) 为使名字的含义更准确, 必要时使用形容词加名 词或其他形式的名词短 语作名字。
描述属性的语法格式:
1.3 对象模型
对象模型表示静态的、结构化的系统的“数据”性质. 它是对模拟客观世界的对象以及对象之间的关系的影 射,描述系统的静态结构。
面向对象方法学强调围绕对象而不是功能来构造系统。 对象模型为建立动态模型和功能模型提供了实质性框 架。
对象模型的基础是类、对象和它们之间的关系。
1.3.1 类图的基本符号
关联的直线两端可以写上重数,表示该类有多少对象与对方的一个 对象连接。
0..1
操作(或服务)的语法格式: ▪可见性 操作名(参数表):返 回值类型{性质串}
▪参数表是用逗号分割的形式 参数的序列. ▪参数: 参数名:类型名=默认值
1.3.2 表示关系的符号
1. 关联表示两个类的对象之间存在某种语义上的联系.
作家
* 使用
1.. *
计算机
被使用
(1) 普通关联实例
通常,关联是双向的,可在一个方向上为关联起一个名字,在另一个方 向上起另一个名字(也可以不起)。名字之前或之后的黑三角代表关联 方向。
1.1 面向对象方法学概述
面向对象学的出发点和基本原则,是尽可能模拟人 类习惯的思维方式,使开发软件的方法与过程尽可 能接近人类认识世界解决问题的方法与过程,也就 是使描述问题的问题空间(问题域)与实现解法的 解空间(求解域)在结构上尽可能一致 从而解决了传统信息方法学中存在的如何从分析 平滑过渡到设计的老问题.
1.1 面向对象方法学概述
面向对象方法在开发的早期定义了一系列面向问题的对象,并且在整 个开发过程中不断充实和扩充这些对象.由于在整个开发过程中都使用 统一的软件概念“对象”,所有其他概念(如功能、关系、事件等)都是围 绕对象组成的,因此,对生命周期各阶段的区分自然就不重要、不明显 了。
分析阶段得到的对象模型也适用于设计和实现阶段。由于各个阶段 都使用统一的概念和符号,因此,整个开发过程时吻合一致的,或者说 是无缝连接的,这自然就很容易实现各个开发步骤的多次反复迭代,达 到认识的逐步深化。
传统方法学的缺点
结构化技术的缺点
不稳定:结构化分析和设计技术是围绕实现功能 的过程来构造系统的,而用户需求的变化大部分 是针对功能的,因此这种变化对基于过程的设计 来说是灾难性的,因此这样设计出的系统结构常 常是不稳定的,即用户需求的变化往往造成系统 结构的较大变化。
可重用性差:把数据和操作作为.
5. 多态
不同的对象收到同一消息可产生完全不同的结果,这一现象叫作多态。
6. 消息通信
7.
消息通信是面向对象方法中对象之间相互联系的方法。
7. 关联
关联有助于把信息系统的各个部分互相联系起来。
8. 复用
复用有3种方式:共享、拷贝、改造 面向对象方法中,类的重用有实例重用、继承重用、多态重用。
1.2 面向对象建模
用面向对象方法开发软件,通常需要建立3种形式的模 型:描述系统数据结构的对象模型,描述系统控制结构 的动态模型、描述系统功能的功能模型。 在整个开发过程中,3种模型一直都在发展完善。在面向 对象分析中,构造出完全独立于实现的应用域模型;在 面向对象设计过程中,把求解域的结构逐渐加入到模型 中;在实现阶段,把应用域和求解域的结构编成代码并 进行严格的测试验证
面向对象分析设计方法(OOAD): ▪ 兴起于20世纪80年代,从20世纪90年代起至今它已
经在分析设计领域占据了无可争议的主流地位 ▪ 1997年11月,UML被国际对象管理组织(OGM)采
纳,此后UML成了OOAD建模语言的国际标准。 ▪ UML对于OOAD中的语义、图形表示法和使用规则做
了完整而详细的定义。其建模能力超过了以往任何 OOAD方法,当然复杂性也随之膨胀。 ▪ 真正使UML流行的是Rational公司基于UML的建模 工具Rose。
每次重复都会增加或明确一些目标系统的性质,但却不是对先前工 作结果的本质性改动,这样就减少了不一致性,降低了出错的可能。 P22喷泉模型
面向对象方法的特点
1. 通用组织方法 2. 抽象 3. 封装或信息隐蔽 4. 继承 5. 多态 6. 消息通信 7. 关联 8. 复用
1. 通用组织方法
通用组织方法用于协助组织信息系统模型以及最终编写的软件。包 括: 对象及其属性或者特征。 整体和部分(is a part of)。 类和成员(is a member of) 。 2. 抽象 忽略问题域的无关部分而集中考虑关键部分的原则
第一章 面向对象方法学引论
传统方法学的缺点
僵化的瀑布模型 瀑布模型意味着生命周期各阶段间存在着严
格的顺序性和依赖性;特别强调预定义需求的重 要性。某些类型的系统需求是模糊的。预定义的 需求可能是过时的。对于需求相对稳定的软件来 说,预定义需求是可行的;当软件需求变化比较 大时,提前1年或数年预先指定需求显然是不实 际的。
▪可见性 属性名:类型名=初值{性
质串}
▪可见性:
画图
+(public),-private),#(protected) ▪性质串:
+大小:Size
明确列出该属性所有可能的取值; 或说明属性的其他性质.eg,约束说明
+位置: Position
{只读}
#图片个数:Integer=0 ▪静态属性:
Draw() getCount():Integer
3. 封装和信息隐蔽 是指软件的组成部分(模块、子程序、方法等)应该互相独立或者 隐藏细节。 在面向对象方法中,封装将功能和数据同时装入对象中。
4. 继承
按照子类和父类的关系,把若干对象类组织成一个层次结构的系统。在这种 层次结构中,通常下层的派生类具有和上层的父类相同的特性(包括特
征和方法),这种现象称为继承。
类名的命名规则:
1) 使用在应用域中人们习 惯的标准术语作为类名, 不要随意创造名字
2) 尽量使用能表示类的含 义的日常用语作为类名, 不要使用空洞的或含义 模糊的词作为名字。Eg.” 库房”比“房屋”合适
3) 为使名字的含义更准确, 必要时使用形容词加名 词或其他形式的名词短 语作名字。
描述属性的语法格式:
1.3 对象模型
对象模型表示静态的、结构化的系统的“数据”性质. 它是对模拟客观世界的对象以及对象之间的关系的影 射,描述系统的静态结构。
面向对象方法学强调围绕对象而不是功能来构造系统。 对象模型为建立动态模型和功能模型提供了实质性框 架。
对象模型的基础是类、对象和它们之间的关系。
1.3.1 类图的基本符号
关联的直线两端可以写上重数,表示该类有多少对象与对方的一个 对象连接。
0..1
操作(或服务)的语法格式: ▪可见性 操作名(参数表):返 回值类型{性质串}
▪参数表是用逗号分割的形式 参数的序列. ▪参数: 参数名:类型名=默认值
1.3.2 表示关系的符号
1. 关联表示两个类的对象之间存在某种语义上的联系.
作家
* 使用
1.. *
计算机
被使用
(1) 普通关联实例
通常,关联是双向的,可在一个方向上为关联起一个名字,在另一个方 向上起另一个名字(也可以不起)。名字之前或之后的黑三角代表关联 方向。
1.1 面向对象方法学概述
面向对象学的出发点和基本原则,是尽可能模拟人 类习惯的思维方式,使开发软件的方法与过程尽可 能接近人类认识世界解决问题的方法与过程,也就 是使描述问题的问题空间(问题域)与实现解法的 解空间(求解域)在结构上尽可能一致 从而解决了传统信息方法学中存在的如何从分析 平滑过渡到设计的老问题.
1.1 面向对象方法学概述
面向对象方法在开发的早期定义了一系列面向问题的对象,并且在整 个开发过程中不断充实和扩充这些对象.由于在整个开发过程中都使用 统一的软件概念“对象”,所有其他概念(如功能、关系、事件等)都是围 绕对象组成的,因此,对生命周期各阶段的区分自然就不重要、不明显 了。
分析阶段得到的对象模型也适用于设计和实现阶段。由于各个阶段 都使用统一的概念和符号,因此,整个开发过程时吻合一致的,或者说 是无缝连接的,这自然就很容易实现各个开发步骤的多次反复迭代,达 到认识的逐步深化。
传统方法学的缺点
结构化技术的缺点
不稳定:结构化分析和设计技术是围绕实现功能 的过程来构造系统的,而用户需求的变化大部分 是针对功能的,因此这种变化对基于过程的设计 来说是灾难性的,因此这样设计出的系统结构常 常是不稳定的,即用户需求的变化往往造成系统 结构的较大变化。
可重用性差:把数据和操作作为.
5. 多态
不同的对象收到同一消息可产生完全不同的结果,这一现象叫作多态。
6. 消息通信
7.
消息通信是面向对象方法中对象之间相互联系的方法。
7. 关联
关联有助于把信息系统的各个部分互相联系起来。
8. 复用
复用有3种方式:共享、拷贝、改造 面向对象方法中,类的重用有实例重用、继承重用、多态重用。
1.2 面向对象建模