《新》第6讲面向对象概念.pptVIP

  1. 1、本文档共80页,可阅读全部内容。
  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文档。上传文档
查看更多
软件工程之 面向对象分析(一) 一、从模块到对象 模块:一段独立的程序代码,包括函数与过程,面向对象范型中对象是模块,对象内的的方法也是模块。 模块化 模块化:按照功能将一个软件切分成许多部分单独开发,然后再组装起来,每一个部分即为模块。其优点是利于控制质量、利于多人合作、利于扩充功能等,是软件工程中一种重要的开发方法。? 抽象,抑制不必要的细节,但强调相关的细节达到分层理解问题,自顶向下层层加细,逐步求精的一种方法;信息隐蔽原理指出:应该这样设计和确定模块,使得一个模块内包含的信息(过程和数据)对于不需要这些信息的模块来说,是不能访问的。应该称为细节隐藏。柜员机 抽象是指对于一个系统的简化描述。对于使用系统的人员,不会去关心系统的组成原理;他们所关心的是系统具有什么样的功能,如何去使用系统,当然,系统的实现人员,需要关心的是该系统的一切情况。 抽象的原则,运用在计算机领域,称之为“信息隐蔽”原则,在面向对象的程序设计语言中,使用数据封装机制实现信息隐蔽。 所谓局部化是指把一些关系密切的软件元素物理地放得彼此靠近。在模块中使用局部数据元素是局部化的一个例子。 模块化 模块独立(Module independence),模块独立是抽象、信息隐蔽和局部化的直接结果。 模块的独立程度可以由两个定性标准度量,这两个标准分别称为内聚和耦合。 耦合衡量不同模块彼此间互相依赖(连接)的紧密程度,他表示模块之间的交互程度; 内聚衡量一个模块内部各个元素彼此结合的紧密程度,他表示模块内部的交互程度。 高内聚、低耦合 传统的程序设计是面向模块的 传统的程序设计方法是模块化(或结构化)的方法: 1)整个软件系统功能逐步细化为多个小的功能。 2)多个小的功能对应由一个模块(如函数,过程,分程序,子程序等)实现。 3)多个模块合作完成较大的功能,所有模块的合作完成整个软件系统功能。 传统的程序设计是面向模块的。 Overview OO Terms : Data encapsulation Abstract data types Information hiding Objects : Inheritance继承, polymorphism多态, and dynamic binding动态绑定 Key Definitions 数据封装 封装:把真实世界中的实体的各方面集中在一个对该实体进行建模的单元中(概念独立CPU、插脚) 数据封装就是将数据结构连同在该数据结构上进行的操作集合封装在一起,形成一个能动的实体,称为对象。用户不必知道对象行为的实现细节。只需根据对象提供的外部特性接口访问对象。 数据封装是为了满足抽象的目的,对系统设计与开发而言它允许设计者在数据结构层次上和在其上的进行的操作层次上思考问题,随后才考虑如何实现数据结构和操作这些细节。其中也包括过程的抽象。 数据封装可以大大简化产品维护的方式; 7.4 Data Encapsulation Example Design an operating system for a large mainframe computer. Batch jobs submitted to the computer will be classified as high priority, medium priority, or low priority. There must be three queues for incoming batch jobs, one for each job type. When a job is submitted by a user, the job is added to the appropriate queue, and when the operating system decides that a job is ready to be run, it is removed from its queue and memory is allocated to it 为大型计算机设计操作系统。提交给计算机的作业都被划分为高、中、低优先级。进来的批作业有三个作业,一是针对作业类型。当用户提交作业时,作业被添加到相应的队列中,并当操作系统决定要运行某作业时,该作业将从队列中移出并得到相应的分配的内存。 Design 1 (Next slide)。 Low cohesion — operations on job queues are spread all over the product队列方面的操作分算在整个产品中 Data Encapsulation Data Encapsulation (contd) m_encapsulation has inf

文档评论(0)

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

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

1亿VIP精品文档

相关文档