第12章 面向对象开发概述.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第12章 面向对象开发概述

一个对象可以是消息的发送者,也可以是消息的接收者,还可以作为消息中的参数。 例如:MyCircle是一个半径4厘米,圆心位于(100,200)的Circle类的对象,也就是Circle类对象的一个实例。当要求它以蓝色在屏幕上显示自己时,则应该发送下列消息: MyCircle.Show(BLUE) MyCircle是接受消息的对象名称; Show是消息名; 括号内的BLUE是消息的参数。 * “多态”来自希腊语,意思是“有多种形式”。 在收到消息时,对象要予以响应,不同的对象收到同一消息可产生多种不同的结果,即会有多种不同形式,这就是多态。 在使用多态时,用户可以发送一个通用的消息,而实现的细节则由接收对象自行决定,这样,同一消息就可以由不同的对象调用不同的方法来响应,从而产生不同的响应结果。 多态的实现受到继承性的支持,利用类层次的继承关系,把具有通用功能的消息存放在高层次,而实现这一功能的不同的行为放在较低层次,则在这些低层次上生成的对象就能给通用消息以不同的响应。 例如:面向对象绘图程序中,在父类“多边形”中定义了一个服务“绘图”,但并不确定执行时绘制一个什么图形。子类“正多边形”和“轴向矩形”都继承了多边形类的绘图服务,但其功能却不相同:一个是画正多边形,一个是画带坐标轴的矩形。正多边形和轴向矩形接收到请求绘图消息时各自执行不同的绘图算法。 4、多态性 多态性是面向对象的特征之一。 多态是指允许不同类的对象对同一消息作出不同的响应。 实现多态,有二种方式:覆盖,重载。 覆盖:是指子类重新定义父类的函数;--override 重载:是指允许存在多个同名函数,而这些函数的参数表不同(或许参数个数不同,或许参数类型不同,或许两者都不同)。--overload Booch的OOD方法 Coad/Yourdon的面向对象分析与设计(OOA/OOD)方法 Rumbaugh的对象建模技术(OMT) Jacobson的面向对象软件工程(OOSE) 12.4 面向对象开发的主要方法 Booch最先描述了面向对象的软件开发方法的基础问题,指出面向对象开发是一种根本不同于传统的功能分解的设计方法。 Booch方法在许多领域取得实际应用。它的最大特点是将几类不同的图表有机结合起来,以反映系统的各个方面是如何相互联系又相互影响的。 Booch认为开发过程为螺旋上升模式,每一次重复的步骤如下: 从应用的问题域中发现类和对象; 分析类和对象的功能、行为,确定其属性和操作; 找出类、对象之间的关系; 说明每个类和对象的界面和实现。 12.4.1 Booch 的OOD方法 Booch方法表示系统模型: 系统模型 静态模型 动态模型 逻辑模型 物理模型 类图 对象图 状态图 交互作用图 模块图 进程图 Coad-Yourdon方法严格区分了面向对象分析OOA (OO Analysis)与面向对象设计OOD (OO Design)。 第15章 面向对象分析详细介绍OOA方法 12.4.2 Coad(科德)/Yourdon的OOA-OOD方法 图12.4 五层模型体系 OMT方法由James Rambough建立,它采用三种模型来描述分析与设计,分别是对象模型、动态模型和功能模型。 对象模型的描述手段是对象图。它用来刻画对象的静态结构及相互间的关系。用对象模型来建模就是确定问题域的类和相关的属性。 动态模型主要采用状态转换图(Statecharts)来描述,它用来刻画对象的动态行为,并定义和识别对象的行为。 功能模型主要表达系统内部数据流的传递和处理的过程。数据流图适用于描述系统的功能模型。 12.4.3 James Rumbaugh的OMT 方法 Jacobson提出的面向对象软件工程(OOSE,Object Oriented Software Engineering)将面向对象的思想贯穿到软件工程中,目的是为了得到一个能适应变化、健壮性好和维护性强的系统。OOSE采用五个模型来完成其实现目标系统的过程: 需求模型(RM)。用来捕捉用户的需求,主要建模手段有用例图、问题域对象模型和人与系统的接口界面。 分析模型(AM)。该模型定义一个健壮的、可扩展的系统的基本结构。OOSE定义了三种对象类型:实体对象、界面对象和控制对象。通过将RM中的对象分别识别到AM中的不同对象类型并分析对象间的关系实现分析模型。 设计模型(DM)。DM将AM的对象定义为块,OOSE认为AM可以完全不考虑系统的真实运行环境的约束,而只注重于系统逻辑的构造。当进入设计后,就需要考虑真实运行环境,这时对于系统的逻辑修改不会很大,而且AM本身具有较好的可扩展性。 实现模型(IM)。就是用某种语言(最好是支持面向对象)来实现DM。 测试模型(TM)。关于

文档评论(0)

2232文档 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档