OOSE02面向对象方法基础讲述.ppt

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
OOSE02面向对象方法基础讲述

--面向对象技术基础 使用UML进行面向对象的分析 董瑞志 Email: hello_u@ MSN: nature_dong@ 联系电话内容提要 传统软件工程方法VS面向对象方法 面向对象方法的基础 面向对象方法的发展 面向对象方法的基本概念 面向对象的软件工程环境 面向对象方法的未来 传统的软件工程方法曾经给软件产业带来了巨大进步,部分缓解了软件危机。但随着人们对软件产品的需求日日益增加,其缺点越来越突出; 为了克服传统软件开发方法的缺点,20世纪70年代提出了面向对象方法; 面向对象方法经过40多年的发展已经深入到计算机科学技术的许多领域,其影响甚至已经深入到计算机软件以外的一些领域。 面向对象软件工程是面向对象方法在软件工程领域运用的结果。 传统软件工程方法 传统软件工程方法采用过程抽象的方式,把软件视为处理流,并定义成由一系列步骤构成的算法。 每一步骤都是带有预定输入和特定输出的一个过程,把这些步骤串联在一起可产生合理、稳定的贯通于整个程序的控制流,最终产生一个简单的具有静态结构的体系结构。 数据抽象、数据结构根据算法步骤的要求开发,它贯穿于整个过程,提供过程所要求操作的信息。 系统的状态是一组全局变量,这组全局变量保存状态的值,把它们从一个过程传送到另一个过程。 传统软件工程方法 传统软件工程方法把软件系统按照功能进行分解,把软件相关问题域生硬的划分成数据和相关操作独立的两部分。 在使用传统软件工程方法开发的系统之中,系统结构基于要执行的任务。若改变了系统中任一部分,则可能需要改变整个系统。 面向对象方法 面向对象方法把问题论域中的主要实体做为系统开发的起点,主要考虑对象的行为而不是必须执行的一系列动作。 在面向对象方法中,对象是数据抽象与过程抽象的综合。 系统状态保存在各数据抽象所定义的数据存储中。 控制流包含在各个数据抽象中的操作内。 在面向对象体系结构,消息从一个对象传送到另一个对象。算法被分布到各种实体中。 面向对象方法基础 面向对象软件开发方法(Object-Oriented Software Development)即OOSD,它是一种运用对象、类、继承、封装、聚合、消息传送、多态性等概念来构造系统的软件开发方法。 其组成部分如下: 面向对象分析(OOA) 面向对象设计(OOD) 面向对象程序设计(OOP) 即:OOSD = OOA + OOD + OOP。 面向对象方法发展 面向对象并非是一个新的概念,实际上它已有30多年的历史。寻其根源可追溯到60年代的挪威,当时挪威计算中心的Kristen Nygaard和Ole-Johan Dahl开发了一种称作Simula67的语言。Simula67首次引入了类、协同程序、子类(虽然没有继承)和虚过程等概念,这很象今天的面向对象语言。 70年代中期,Xerox Palo Alto研究中心的研究人员Alan Kay团队设计了Smalltalk语言,该语言的每个元素都被当作一个对象来实现,其程序设计环境及相关的各个方面都是面向对象的。 面向对象方法发展 但是,面向对象的推广很慢。如:Samlltalk的成果直到1981年8月因Byte杂志的介绍才为外界所知,许多软件开发人员了解Samlltalk时,都把它看作是一个窗口系统,而不是程序设计技术的一次革命。 80年代,C成为很受欢迎的程序设计语言,它不仅可用在微机上,还可用在多种结构的系统和环境中。80年代早期,ATT贝尔实验室的Bjarne Stroustrup把C语言扩展为支持面向对象程序设计的C++。在C++中,程序员可以在其熟悉的语言环境下学习掌握面向对象的程序设计技术,而不必去探究一种新的语言和环境。 面向对象方法发展 自90年代以来,软件与硬件之间的差距至少有两代处理器之多,并且这种差距还在增大。当软件系统变得更加复杂时,常规软件工具、技术和概念已不足以应付,从而使软件开发者陷入了困境。但面向对象的方法能够控制软件的复杂性,从而促进了面向对象的发展,掀起了一股“面向对象”热。 面向对象方法的基本思想 尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,也就是使描述问题的问题空间(即问题域)与实现解法的解空间(即求解域)在结构上尽可能一致。 面向对象方法的基本思想 人类对客观事物的认知过程: 从一般到特殊的演绎方法 从特殊到一般的归纳方法 面向对象方法的基本思想 面向对象方法为我们同时提供了抽象和归纳的机制。 面向对象方法的基本思想 从现实世界中客观存在的事物出发来构造软件系统,并在系统构造中尽可能运用人类的自然思维方式。 面向对象方法的优点 与人类的思维习惯一致、稳定性好、可重用性好、可维护性好、易修改、易理解、

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档