第9章 面向对象方法学引论软件工程导论(山东师范大学)ppt课件.ppt

第9章 面向对象方法学引论软件工程导论(山东师范大学)ppt课件.ppt

ID:58696790

大小:979.00 KB

页数:55页

时间:2020-10-04

第9章 面向对象方法学引论软件工程导论(山东师范大学)ppt课件.ppt_第1页
第9章 面向对象方法学引论软件工程导论(山东师范大学)ppt课件.ppt_第2页
第9章 面向对象方法学引论软件工程导论(山东师范大学)ppt课件.ppt_第3页
第9章 面向对象方法学引论软件工程导论(山东师范大学)ppt课件.ppt_第4页
第9章 面向对象方法学引论软件工程导论(山东师范大学)ppt课件.ppt_第5页
资源描述:

《第9章 面向对象方法学引论软件工程导论(山东师范大学)ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件工程导论第九章面向对象方法学引论1第九章面向对象方法学引论9.1面向对象方法学概述9.2面向对象概念9.3面向对象建模9.4对象模型9.5动态模型9.6功能模型9.7三种模型之间的关系2学习重点和难点理解面向对象技术中的基本思想、概念和原理等;理解面向对象建立的三种模型的功能和相互关系。39.1面向对象方法学概述软件工程发展的两个重要阶段传统软件工程面向对象软件的工程4传统软件工程以面向过程的结构化程序设计为基础;遵循“程序=数据结构+算法”的思路;由“追求技巧与效率”到“清晰第一,效率第二”缺点:不太适应规模大、特别复杂的项目;难以解决软件重用的问题;难以适应需求的变化;难以彻

2、底解决维护问题。5面向对象软件工程按人类习惯的思维方法,以现实世界中客观存在的事物(即对象)为中心来思考和认识问题。采用的思想方法与原则:抽象、分类、继承、聚合、封装等。以易于理解的方式表达软件系统,建立问题域模型,使设计出的软件尽可能直接地描述现实世界,具有更好的可维护性6软件工程学家Codd和Yourdon认为:面向对象=对象+类+继承+通信如果一个软件系统采用这些概念来建立模型并予以实现,那么它就是面向对象的。7面向对象技术发展概述初始阶段:上世纪60年代,挪威奥斯陆大学和挪威计算中心开发的Simula67的语言;70年代中期,Xerox研究中心开发的SmalltaIk语言,具

3、备了面向对象语言的各种特征。发展阶段:涌现大批面向对象编程语言(OOPL)。如C++、objective-C、objectPascal、Eiffel、Actor等。成熟阶段:面向对象分析(OOA)和面向对象设计(OOD)的研究。出现各种著名的面向对象分析设计的方法,如:Coad/Yourdon的方法、Booch的方法、OMT方法、wirtf-Brock的RDD方法、Jacobson的OOSE方法……等。8面向对象技术的基本观点①任何客观的事物或实体都是对象。对象组成客观世界,复杂的对象可以由简单的对象组成。②具有相同数据和操作的对象可以归并为一个类(class),对象是对象类的一个实

4、例。③类可以派生出子类,子类继承父类的全部特性(数据和操作),又可以有自己的新特性。子类与父类形成类的层次结构。④对象之间通过消息传递相互联系。9面向对象方法学的优点1、与人类习惯的思维方法一致2、稳定性好3、可重用性好4、较易开发大型软件产品5、可维护性好10传统的开发方法与面向对象的开发方法比较119.2面向对象的概念9.2.1对象(objoct)在现实世界中有意义的、与所要解决的问题有关系的任何事物都可以作为对象,包括具体的物理实体的抽象、人为的概念、任何有明确边界和意义的东西。如:一名职工、一本图书、贷款、生产计划、一场演出等。对象既有静态的属性,又有动态的行为(操作)。12

5、从软件开发的角度定义对象系统中用来描述客观事物的实体,是构成系统的基本单位。由一组属性和相关操作组成的服务组成。这是对象的两个基本要素:属性:用来描述对象静态特征的一个数据项;服务:用来描述对象动态特征(行为)的一个操作序列。对象的属性和所有操作封装在一起,构成一个统一体。属性一般只能通过执行对象的操作来改变。13表示内部状态的数据、实现各操作的代码及局部数据,被隐藏,无法从外面看见、访问或修改;使用对象的时候,只能通过对象与外界的界面来操作;操作时,只需知道该操作的名字和所需要的参数,不需要知道这些操作是如何实现的;简单、方便,安全性和可靠性高。149.2.2其他概念1、类(Cla

6、ss)具有相同属性和服务的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述。“类”好比是一个对象模板,用它可以产生多个对象。学生对象1类名学生对象2姓名:张三属性姓名:李四年龄24年龄20性别:男性别:女选课服务选课考试考试类的描述15例:类(class):是对象的“类型”(type)一般用关键字class来表示。ClassCPeople{longID;stringname;voidDoSomething();}对象是类的实例:CPeopleTom162、实例(instance)实例是某个特定类所描述的一个具休对象。如:“张三”“李四”是类“学生”的实例。对象:可以是一个具

7、体的对象,也可以泛指一般的对象。实例:必然是指一个在客观世界中存在的具体对象。173、消息(message)对象之间通信的手段,是一个对象要求另一对象执行类中定义的某个操作的规格说明。通常一个消息由三部分组成:接收消息的对象消息标识符(即消息名)零个或多个变元例如:MyCircle.Show(Green)MyCircle是接收消息的对象的名字,Show是消息名,Green是消息的变元。184、方法(method)对象所能执行的操作称为方法,也就是类中所定义

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。