版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第2章 面向对象技术与UML 2.1 面向对象技术概述 2.2 面向对象的分析 2.3 面向对象的设计 2.4 基于UML的面向对象分析、设计 过程 2.1 面向对象技术概述 2.1.1 面向对象的基本概念 2.1.2 面向对象的开发语言 2.1.3 面向对象的设计与开发工具 2.1.1 面向对象的基本概念 Coad和Yourdon: 面向对象=对象+类+继承+通信 2.1.1 面向对象的基本概念 面向对象技术的基本观点: 客观世界由对象组成,任何客观实体都是 对象,复杂对象可以由简单对象组成。 具有相同数据和操作的对象可归纳成类, 对象是类的一个实例。 类可以派生出子类,子类除了继承父类的
2、全部特性外还可以有自己的特性。 对象之间的联系通过消息传递来维系。 面向对象技术是一种以对象为基础,以事件或消 息来驱动对象执行处理的程序设计技术。 从程序设计方法上来讲,它是一种自下而上的程 序设计方法,它不像面向过程程序设计那样一开 始就需要使用一个主函数来概括出整个程序,面 向对象程序设计往往从问题的一部分着手,一点 一点地构建出整个程序。 2.1.1 面向对象的基本概念 面向对象的核心元素: 对象 封装 消息 类 继承 多态性 结构与连接 1. 对象 客观世界里的任何实体都可以被称为对象。 对象可以是具体的、有形的物,也可以是无形的 事物或概念。 对象是问题域或实现域中某些事物的一个抽
3、象。 对象是一个封装数据属性和操作行为的实体。 系统中的对象在软件生命周期的各个阶段可能有 不同的表示形式。 可以利用对象来代表现实世界中的对象 一个对象的实例图解 2. 封装 封装是面向对象方法的一个重要原则。 封装有两个含义: 结合性 信息隐蔽性 目的:将对象的使用者与设计者分开, 使用者不必知道行为实际的细节,只需用 设计者提供的消息来访问对象 过程过程1 1 过程过程2 2 过程过程3 3 数据实体数据实体 属于该对象属于该对象 的数据的数据 对象对象 处理数据的方法处理数据的方法 3. 消息 消息是向对象发出的服务请求。 一个消息包含消息名、接受对象的标志、 服务标志、输入信息、回答
4、信息等。 消息传递机制。 4. 类 类是一组具有相同数据结构和相同操作的 对象的集合。 类是对象的抽象。 客观世界实际存在的都是对象,而不是类 。 类和对象的关系。 5. 继承 继承性是面向对象程序设计语言不同于其 他语言的最主要特点。 继承是指子类可以自动拥有父类的全部属 性与操作的机制。 父类(超类) 子类(派生类) 继承性又分为单重继承和多重继承两类。 继承的描述 在建造系统模型时,可以根据所涉及到 的事物的共性抽象出一些基本类,在 此基础上在根据事物的个性抽象出新的类 新类即继承父类的全部属性和操作, 又具有独立的属性和操作。 父类和子类的关系为一般与特殊的关系 单重继承和多重继承的描
5、述 6. 多态性 定义:同一操作作用于不同的对象,可以有不 同的解释,产生不同的执行结果。 多态性分为两种: 编译时的多态性。 运行时的多态性。 6. 多态性 n多态性(Polymorphism)是指在两个或多个属于不同类中同一函数名对应多 个具有相似功能的不同函数, n可以使用相同的调用方式来调用这些具有不同功能的同名函数。 7. 结构与连接 对象之间的四种关系 一般/特殊结构 整体/部分结构 实例连接 消息连接 一般/特殊结构 一般/特殊结构均形成层次或网络 层次结构图层次结构图 整体/部分结构 实例连接 实例连接用于表达对象之间的静态联系 教师教师 指导论文指导论文 0,m 1 学生学生
6、 教师为学生教师为学生 指导论文:指导论文: 教师教师 教学教学 0,m 0,n 学生学生 教师为学生教师为学生 授课:授课: 消息连接 定义:两个对象之间存在的由于通信需要 而形成的关系。 表示方法:使用箭头从发送消息的对象指 向接收消息的对象。 2.1.2 面向对象的开发语言 1. 面向对象的建模语言 2. 面向对象的程序设计语言 1. 面向对象的建模语言 Booch 1993(Grady Booch) OOSE(Jim Rumbaugh) OMT-2(Ivar Jacobson) UML UML的发展过程 2. 面向对象的程序设计语言 四个基本的分支: 基于Smalltalk的语言 基于
7、C的语言 基于LISP的语言 基于PASCAL的语言 SMALLTALK Alan Kay ACM2003图灵奖主人 纯面向对象设计语言 一切都是对象 程序中无变量的类型声明 C C混合型 语法复杂 JAVA 跨平台 LISP 函数式编程语言 CLOS 推理 Pascal TP Eiffel面向契约编程 Ada Rational Suite 2003 Rational ClearCase 软件配置管理(software configuration Management) 管理各种制品的版本(模型,源代码,测试用 例等) CVS(Concurrent Version System) Ration
8、al ClearQuest 变更请求管理 (Change Request Management) 功能增强、缺陷报告、文档修改 提交、评估、决策、实现、验证、完成。 Rational PureCoverage 辅助测试工具。分析测试用例对代码覆盖 范围的分析。 Rational Purify 软件纠错工具; 数组越界、野指针、内存泄露 Rational Quantify 评估软件运行性能工具 寻找系统运行效率的瓶颈部分。 局部原理。 Rational SoDA for Word Software Documentation Automation 项目中文档的意义。 开发文档的自动模板提取。 R
9、ational 测试工具 Rational Robot Rational TestFactory TestManager Rose Model Integrator 模型集成。 模型并行开发,修改问题。 面向对象和项目设计 面向对象和项目设计 面向对象设计的准则包括模块化、抽象、信息隐藏、低耦 合和高内聚等特征。 系统设计是问题求解及建立解答的高级策略。必须制定解 决问题的基本方法,系统的高层结构形式包括子系统的分 解、它的固有并发性、子系统分配给硬软件、数据存储管 理、资源协调、软件控制实现、人机交互接口等等。 系统设计一般是先从高层入手,然后细化。 系统设计要决定整个结构及风格,这种结构为
10、后面设计阶 段的更详细策略的设计提供了基础。 用面向对象思想建立模型 瀑布模型也被称为生存周期模型,其核心思想是按照相应 的工序将问题进行简化,将系统功能的实现与系统的设计工 作分开,便于项目之间的分工与协作,即采用结构化的分析 与设计方法将逻辑实现与物理实现分开。瀑布模型将软件生 命周期划分为软件计划、需求分析和定义、软件设计、软件 实现、软件测试、软件运行和维护这6个阶段,并且规定了 它们自上而下的次序,如同瀑布一样下落。每一个阶段都是 依次衔接的。 用面向对象思想建立模型 喷泉模型是一种以对象为驱动、以用户需求为动力的模型,主要用于描述面向对象的 软件开发过程。该模型认为软件开发过程自下而上周期的各阶段是相互重叠和多次反 复的,就像水喷上去又可以落下来,类似一个喷泉。 用面向对象思想建立模型 基于构件的开发模型利用模块化方法将整个系统模块化,并在一定构件模型 的支持下复用构件库中的一个或多个软件构件,通过组合手段高效率、高质 量地构造应用软件系统的过程。 用面向对象思想建立模型 敏捷方法强调适应性而非预测性、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026江苏苏州科技大学招聘43人(第一批)笔试参考题库及答案详解
- 2026上海松江区车墩镇社区学校招聘兼职教师笔试模拟试题及答案详解
- 2026蒙铁特钢(内蒙古)有限公司招聘人事行政专员1人笔试备考试题及答案详解
- 2026浙江宁波大学非事业编制人员科研肋理招聘1人笔试备考题库及答案详解
- 2026内蒙古通辽科左中旗青年见习人招聘60人笔试模拟试题及答案详解
- 2026上海复旦大学法学院招聘法学院研究平台与英文项目秘书岗位1人笔试参考题库及答案详解
- 招聘1人!上拉秀乡卫生院护士招聘笔试模拟试题及答案详解
- 2026陕西西安雁塔日化医院招聘23人笔试备考试题及答案详解
- 2026年温州市洞头区瓯江口实验学校面向社会公开招聘教师2人笔试备考题库及答案详解
- 2026江苏淮安市清江浦区淮海街道公益性岗位(第二批)招聘1人笔试模拟试题及答案详解
- 2026北京语言大学事业编制人员招聘11人备考题库(第三批)附答案详解ab卷
- 2026年中好建造科技有限公司第二次社会招聘笔试参考试题及答案解析
- 2026年浙江农信选调考试试题及答案
- 2026年北京市西城区初三下学期二模数学试卷及答案
- 2026云南高创人才服务有限公司招聘6人笔试备考试题及答案解析
- 第六章-初始适航管理-民用航空器适航管理教学课件
- DB44∕T 2830-2026 艾滋病病毒感染者及艾滋病患者手术室管理规范
- 黑龙江省哈尔滨市2025届中考物理试卷(含答案)
- 2026年中国中车集团软件岗面试常见问题及嵌入式系统考点
- 储能行业压缩空气储能电站经济性调研报告
- 长租公寓盈利模式与成本结构优化
评论
0/150
提交评论