第8章面向对象方法学导论.pptVIP

  1. 1、本文档共93页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章 面向对象方法学引论 9.1 面向对象方法学概述 9.2 面向对象的概念 9.3 面向对象建模 9.4 对象模型 9.5 动态模型 9.6 功能模型 9.7 3种模型之间的关系 9.8 小结 9.1 面向对象方法学概述 在20世纪60年代后期出现的面向对象编程语言。 自20世纪80年代中期起,逐步形成了面向对象方法学。 20世纪90年代,面向对象方法学已经成为人们在开发软件时首选的范型。 9.1.1 面向对象方法学的要点 面向对象方法学的出发点和基本原则,是尽可能模拟人类习惯的思维方式。 客观世界的问题都是由客观世界中的实体及实体相互间的关系构成的。 客观世界中的实体抽象为问题域的对象(object)。 对象是不固定的。一个雇员可以作为一个对象,一家公司也可以作为一个对象 9.1.1 面向对象方法学的要点 面向对象方法具有下述4个要点: (1) 认为客观世界是由各种对象组成的,任何事物都是对象,复杂事物是由多个简单事物复合而成。 (2) 把所有对象都划分成各种对象类,每个对象类都定义了一组数据和一组方法。数据用于表示其静态属性,是其状态信息。方法是允许施加于该类对象上的操作,是该类所有对象共享的,并不需要为每个对象都复制操作的代码。 9.1.1 面向对象方法学的要点 (3) 按照子类(派生类)与父类(基类)的关系,把若干个对象类组成一个层次结构的系统(类等级)。下层的派生类具有和上层的基类相同的特性,即继承(inheritance)。但是,如果在派生类中对某些特性又做了重新描述,则在派生类中的这些特性将以新描述为准,低层的特性将屏蔽高层的同名特性(如C++中的纯虚函数)。 9.1.1 面向对象方法学的要点 (4) 对象彼此之间仅能通过传递消息互相联系。对象必须发消息请求它执行它的某个操作,处理它的私有数据,而不能从外界直接对它的私有数据进行操作。对象就像一个不透明的黑盒子,在外界是看不见的,更不能直接使用,这就是“封装性”。 9.1.1 面向对象方法学的要点 面向对象的方法学用下列方程来概括: OO=objects+classes+inheritance+communication with messages 面向对象就是既使用对象又使用类和继承等机制,而且对象之间仅能通过传递消息实现彼此通信。 9.1.1 面向对象方法学的要点 仅使用对象和消息,则这种方法称为基于对象的(object-based)方法,而不是面向对象方法; 进一步要求把所有对象都划分为类,则这种方法可称为基于类的(class-based)方法,但仍然不是面向对象的方法。只有同时使用对象、类、继承和消息的方法,才是真正面向对象的方法。 9.1.2 面向对象方法学的优点 1. 与人类习惯的思维方法一致 传统的面向过程的设计方法以算法为核心,把数据和过程作为相互独立的部分。 2. 稳定性好 传统的软件系统的结构紧密依赖于系统所要完成的功能,当功能需求发生变化时将引起软件结构的整体修改。 事实上,用户需求变化大部分是针对功能的,因此,这样的软件系统是不稳定的。 9.1.2 面向对象方法学的优点 3. 可重用性好 用已有的零部件装配新的产品,是典型的重用技术。 有两种方法可以重复使用一个对象类:一种方法是创建该类的实例,从而直接使用它;另一种方法是从它派生出一个满足当前需要的新类。 继承性机制使得子类不仅可以重用其父类的信息,而且可以在父类代码的基础上方便地修改和扩充。 9.1.2 面向对象方法学的优点 4. 较易开发大型软件产品 用面向对象方法学开发软件时,构成软件系统的每个对象就像一个微型程序,有自己的数据、操作、功能和用途。 一个大型软件产品可分解成一系列本质上相互独立的小产品来处理,这就不仅降低了开发的技术难度,而且也使得对开发工作的管理变得容易多了。 9.1.2 面向对象方法学的优点 5. 可维护性好 (1) 面向对象的软件稳定性比较好 当对软件的功能或性能的要求发生变化时,通常不会引起软件的整体变化,往往只需对局部作一些修改。 (2) 面向对象的软件比较容易修改 类是理想的模块机制,它独立性好,修改一个类通常很少会牵扯到其他类。 9.1.2 面向对象方法学的优点 (3) 面向对象的软件比较容易理解 维护软件的时候,首先需要深入理解软件。 面向对象的软件技术符合人们习惯的思维方式。 9.1.2 面向对象方法学的优点 (4) 易于测试和调试 如果测试过程中发现了错误,还必须通过调试改正过来。 对面向对象的软件进行维护,主要通过从已有类派生出一些新类来实现。 对类的测试通常比较容易实现,如果发现错误也往往集中在类的内部,比较容易调试。 9.1.3 喷泉模型 迭代是软件开发过程中普遍存在的一种内在属性。经

文档评论(0)

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

教师资格证持证人

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

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档