网站大量收购独家精品文档,联系QQ:2885784924

l-第9章面向软件工程课空件对象方法学.ppt

l-第9章面向软件工程课空件对象方法学.ppt

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

软件工程 第九章 面向对象方法学引论 引言 话说三国时期,曹操带领百万大军攻打东吴,大军在长江赤壁驻扎,军船连成一片,眼看就要灭掉东吴,统一天下,曹操大悦,于是大宴众文武,在酒席间,曹操诗性大发,不觉吟道:“喝酒唱歌,人生真爽。……”。众文武齐呼:“丞相好诗!”于是一臣子速命印刷工匠刻版印刷,以便流传天下。 把每个字做一个对象,只需更改四个字就可 第九章 面向对象方法学引论 1 面向对象方法学概述 2 面向对象概念 3 面向对象建模 4 对象模型 5 动态模型 6 功能模型 7 三种模型之间的关系 学习重点和难点 理解面向对象技术中的基本思想、概念和原理等;理解面向对象建立的三种模型的功能和相互关系。 9 . 1 面向对象方法学概述 软件工程发展的两个重要阶段 传统软件工程 面向对象软件的工程 传统软件工程 以面向过程的结构化程序设计为基础; 遵循“程序=数据结构+算法”的思路; 由“追求技巧与效率”到“清晰第一,效率第二” 缺点: 不太适应规模大、特别复杂的项目; 难以解决软件重用的问题; 难以适应需求的变化; 难以彻底解决维护问题。 面向对象软件工程 按人类习惯的思维方法,以现实世界中客观存在的事物(即对象)为中心来思考和认识问题。 采用的思想方法与原则:抽象、分类、继承、聚合、封装等。 以易于理解的方式表达软件系统,建立问题域模型,使设计出的软件尽可能直接地描述现实世界,具有更好的可维护性 软件工程学家Codd 和Yourdon认为: 面向对象=对象+类+继承+通信 如果一个软件系统采用这些概念来建立模型并予以实现,那么它就是面向对象的。 面向对象技术发展概述 初始阶段:上世纪 60 年代,挪威奥斯陆大学和挪威计算中心开发的 Simula67 的语言; 70 年代中期, Xerox 研究中心开发的 Smallta Ik 语言,具备了面向对象语言的各种特征。 发展阶段:涌现大批面向对象编程语言(OOPL )。如 C ++、 objective-C 、 ob j ect Pascal 、 Eiffel 、 Actor 等。 成熟阶段:面向对象分析(OOA )和面向对象设计( OOD )的研究。出现各种著名的面向对象分析设计的方法,如: Coad/ Yourdon 的方法、 Booch 的方法、 OMT方法、 wirtf-Brock 的 RDD 方法、 Jacobson 的 OOSE 方法 … … 等。 面向对象技术的基本观点 ① 任何客观的事物或实体都是对象。对象组成客观世界,复杂的对象可以由简单的对象组成。 ② 具有相同数据和操作的对象可以归并为一个类(class ) ,对象是对象类的一个实例。 ③ 类可以派生出子类,子类继承父类的全部特性(数据和操作),又可以有自己的新特性。子类与父类形成类的层次结构。 ④ 对象之间通过消息传递相互联系。 面向对象方法学的优点 1 、与人类习惯的思维方法一致 2 、稳定性好 3 、可重用性好 4 、较易开发大型软件产品 5 、可维护性好 传统的开发方法与面向对象的开发方法比较 9 . 2 面向对象的概念 9 . 2 . 1 对象( objoct ) 在现实世界中有意义的、与所要解决的问题有关系的任何事物都可以作为对象,包括具体的物理实体的抽象、人为的概念、任何有明确边界和意义的东西。 如:一名职工、一本图书、贷款、生产计划、一场演出等。 对象既有静态的属性,又有动态的行为(操作)。 从软件开发的角度定义对象 系统中用来描述客观事物的实体,是构成系统的基本单位。 由一组属性和相关操作组成的服务组成。这是对象的两个基本要素: 属性:用来描述对象静态特征的一个数据项; 服务:用来描述对象动态特征(行为)的一个操作序列。 对象的属性和所有操作封装在一起,构成一个统一体。 属性一般只能通过执行对象的操作来改变。 表示内部状态的数据、实现各操作的代码及局部数据,被隐藏,无法从外面看见、访问或修改; 使用对象的时候,只能通过对象与外界的界面来操作; 操作时,只需知道该操作的名字和所需要的参数,不需要知道这些操作是如何实现的; 简单、方便,安全性和可靠性高。 9.2.2 其他概念 1、类( Class ) 具有相同属性和服务的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述。 “类”好比是一个对象模板,用它可以产生多个对象。 例: 类(class):是对象的“类型”(type) 一般用关键字class来表示。 Class CPeople{ long ID; string name; void DoSomething(); } 对象是类的实例:CPeople Tom 2、实例(instance) 实例是某个特定类所描述的一

文档评论(0)

150****4233 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档