面向对象方法学引论

面向对象方法学引论

ID:42322560

大小:617.01 KB

页数:50页

时间:2019-09-12

面向对象方法学引论_第1页
面向对象方法学引论_第2页
面向对象方法学引论_第3页
面向对象方法学引论_第4页
面向对象方法学引论_第5页
资源描述:

《面向对象方法学引论》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第九章面向对象方法学引论(Object-OrientedMethodology)9.1面向对象方法学概述9.2面向对象的概念9.3面向对象建模9.4对象模型9.5动态模型9.6功能模型9.73种模型之间的关系第九章面向对象方法学引论(Object-OrientedMethodology)传统的软件工程方法学曾经给软件产业带来巨大进步,部分地缓解了软件危机,使用这种方法学开发的许多中、小规模软件项目都获得了成功。但是,人们也注意到当把这种方法学应用于大型软件产品的开发时,似乎很少取得成功。在20世纪60年代后期出现的面向对象编程语言Simula-6

2、7中首次引入了类和对象的概念,自20世纪80年代中期起,人们开始注重面向对象分析和设计的研究,逐步形成了面向对象方法学。到了20世纪90年代,面向对象方法学已经成为人们在开发软件时首选的范型。面向对象技术已成为当前最好的软件开发技术。9.1面向对象方法学概述9.1.1面向对象方法学的要点面向对象方法学的出发点和基本原则,是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,也就是使描述问题的问题空间(也称为问题域)与实现解法的解空间(也称为求解域)在结构上尽可能一致。与传统方法相反,OOM以数据或信息为

3、主线,把数据和处理结合构成统一体——对象。这时程序不再是一系列工作在数据上的过程或函数集合,而是相互协作又彼此独立的对象的集合。9.1面向对象方法学概述9.1.1面向对象方法学的要点OOM的四要素:①对象(object):世界由对象组成。任何事物都是对象,复杂的对象可以由比较简单的对象以某种方式组合而成。因此,面向对象的软件系统是由对象组成的,软件中的任何元素都是对象,复杂的软件对象由比较简单的对象组合而成。由此可见,面向对象方法用对象分解取代了传统方法的功能分解。②类(class):对象可划分为类;单个对象可视为某一类的实例(instance)

4、。每个对象类都定义了一组数据和一组方法。数据用于表示对象的静态属性,是对象的状态信息。9.1面向对象方法学概述9.1.1面向对象方法学的要点OOM的四要素:③继承(inheritance):类可分层,下层子类与上层父类有相同特征,称为继承。按照子类(或称为派生类)与父类(或称为基类)的关系,把若干个对象类组成一个层次结构的系统(也称为类等级)。④消息(message):对象间只能通过发送消息进行联系,外界不能处理对象的内部数据,只能通过消息请求它进行处理(如果它提供相应消息的话)。OOM=对象+类+继承+消息传递9.1面向对象方法学概述9.1.2

5、面向对象方法学的优点①与人类习惯的思维方法一致传统方法:面向过程设计,以计算为核心,数据与操作分离,不易理解。OOM:以object为核心,强调对现实概念的模拟而不强调算法。“面向对象方法学的基本原则,是按照人们习惯的思维方式建立问题域的模型,开发出尽可能直观、自然地表现求解方法的软件系统”。Class:由特殊到一般的归纳(induction)Inheritance:由一般到特殊的演绎(deduction)9.1面向对象方法学概述9.1.2面向对象方法学的优点②稳定性好传统方法:结构依赖于功能,不稳定。OOM:以object模拟实体,需求变化

6、不会引起结构的整体变化,因为实体相对稳定,故系统也相应稳定。③可重用性好传统方法:通过建立标准函数库来重用软构件。但标准函数缺少必要的“柔性”,难以适应不同场合的不同需要。OOM:一个class所有的实例都可重用它的代码;由继承派生出的新的class可重用其父类的代码,并且可以修改、扩充而不影响其父类的使用。9.1面向对象方法学概述9.1.2面向对象方法学的优点④较易开发大型软件产品用面向对象方法学开发软件时,构成软件系统的每个对象就像一个微型程序,有自己的数据、操作、功能和用途,因此,可以把一个大型软件产品分解成一系列本质上相互独立的小产品来处

7、理,这就不仅降低了开发的技术难度,而且也使得对开发工作的管理变得容易多了。9.1面向对象方法学概述9.1.2面向对象方法学的优点⑤可维护性好传统方法:可维护性是最令人头痛的问题。OOM:从以下几方面改善了可维护性:稳定性好:软件功能需求的变化不牵动全局,只需局部修改;容易修改:只要修改不涉及class的对外接口,则内部修改完全不影响外部调用;继承(Inheritance)和多态性(polymorphism)使其很容易被修改和扩充;容易理解:符合人们习惯的思维方式容易测试、调试:对面向对象的软件进行维护,主要通过从已有类派生出一些新类来实现。9.1

8、面向对象方法学概述9.1.2面向对象方法学的优点OOM并不是减少了开发时间,而是通过提高可重用性、可维护性,进行扩充和修改的容易程度等,

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

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

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