课程11 面向对象分析与设计.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文档。上传文档
查看更多
课程11 面向对象分析与设计

第11章 面向对象分析与设计 面向对象方法源于传统软件工程实践且更加符合人们认识自然、理解自然的习惯。 在传统软件工程原则中增加面向对象的指导原则,使软件工程的原理和方法更加丰富。在软件工程的学习和实践过程中,应该注意不要将传统软件工程的思想方法和面向对象方法割裂开来。单纯强调面向对象方法,而忽视传统软件工程的思想方法,那么面向对象方法就会失去根基,反而限制了面向对象方法的进一步发展。 11.1 面向对象方法 面向对象(Object-Oriented,OO)方法是一种把面向对象的思想应用于软件开发过程,从而指导软件开发活动的系统方法。它建立在对象概念(对象、类和继承)基础上,是一种运用对象、类、继承、封装、聚合、消息发送、多态性等概念来构造系统的软件开发方法。 11.1 面向对象方法 面向对象方法一出现就很快受到计算机软件界的青睐,并成为主流开发方法,其原因主要有以下方面: 面向对象方法符合人们对客观世界的认识规律 面向对象方法开发的软件系统其体系结构易于理解、扩充和维护 面向对象方法中的继承机制可以有力地支持软件复用 11.1.1 面向对象方法的特点 从问题论域中客观存在的事物出发来构造软件系统,用对象作为对这些事物的抽象表示,并以此作为系统的基本构成单位。 事物的静态特征用对象的属性表示,事物的动态特征用对象的服务表示。 对象的属性与服务结合为一个独立的实体,对外屏蔽其内部细节,称做封装。 把具有相同属性和相同服务的对象归为一类,类是这些对象的抽象描述,每个对象是其类的一个实例。 11.1.1 面向对象方法的特点 通过在不同程度上运用抽象的原则,可以得到较一般的类和较特殊的类。 复杂的对象可以用简单的对象作为其构成部分,称做聚合。 对象之间通过消息进行通信,以实现对象之间的动态联系。 通过关联表达对象之间的静态关系。 11.1.2 面向对象软件工程 面向对象软件工程(OOSE)是面向对象方法在软件工程领域的全面应用,它包括: 面向对象分析(OOA) 面向对象设计(OOD) 面向对象编程(object-oriented programming,OOP) 面向对象测试(object-oriented test,OOT) 面向对象软件维护 11.2 面向对象的概念 要掌握面向对象的技术和方法,首先必须明确“对象”和“面向对象”的概念。对此P. Coad和E. Yourdon提出用下列等式来认识面向对象: 面向对象= 对象+ 类+继承+ 通过消息的通信 可以把面向对象定义为: 一种使用对象、消息传递、类、继承、多态等来开发问题论域模型的解的范型。 一种基于对象、类、实例和继承等概念的技术。 将对象作为建模的基本单位。 11.2.1 对象 对象是指一组属性及其操作的封装体。属性通常是一些数据,但有时也可以是另一个对象。对象的属性只能通过对象所提供的操作来存取或修改。操作也称为方法或服务,它规定了对象的行为,表示对象所能提供的服务。 封装是一种信息隐蔽技术,用户只能看见对象封装界面上的信息,其内部实现则是隐蔽的。封装使对象的定义和实现分开。 11.2.2 类 类是一组具有相同属性和相同操作的对象的集合。一个类中的每个对象都是这个类的一个实例。 在分析和设计时,通常把注意力集中在类上,而不是具体的对象上。 继承是类间的基本关系,它是基于层次关系的不同类共享数据和操作的一种机制。父类中定义了其所有子类的公共属性和操作,在子类中除了定义自己特有的属性和操作外,还可以对父类(或祖先类)中的操作重新定义其实现方法。 11.2.3 消息传递 消息传递是对象间通信的手段,一个对象通过向另一个对象发送消息来请求其服务。一个消息通常包括接收对象名、调用的操作名和适当的参数。消息只告诉接收对象需要完成什么操作,并不指示接收者怎样完成操作。消息完全由接收者解释,接收者独立决定采用什么方法完成所需的操作。 11.2.4 多态性 多态性是指同一个操作作用于不同的对象上可以有不同的解释,并产生不同的执行结果。 与多态性密切相关的一个概念就是动态绑定。传统程序设计语言的过程调用与目标代码的连接(即调用哪个过程)放在程序运行前进行(称为静态绑定),动态绑定则把这种连接推迟到运行时才进行。 11.3 面向对象软件的开发过程 面向对象方法改进了在软件生存周期各个阶段之间的界面,因为在生存周期各个阶段所开发出来的“部件”都是类。在面向对象生存期的各个阶段对各个类的信息进行细化,类成为分析、设计和实现的基本单元。 11.3.1 类生存期 在软件开发的瀑布模型中,各个阶段被细化成许多实际的子处理。这些阶段开始于应用分析,直到维护。由于这个生存期对整个应用的开发过程进行了模型化,所以被称为应用生存期。 使用

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档