- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第00–1章面向对象设计原理–33
Dr. Haiin Zhu 1.1 面向对象编程目标 ? -正确Correctness, -高效Efficiency, -扩展Extensible, -可读Readable, -便捷Friendly, -网络化Net/Service Based 1、准确解决涉及的问题,实现业务功能 2、有效地避免时间和资源的浪费 3、其他人能够容易地读懂编写的程序 4、用户交互界面简洁、操作方便 程序开发技术 整个编程开发技术经历了不断的发展 1, 使编程语言的描述和处理能力更加强大 (basic, c, c++, java, c#, vb) 2, 提高能够开发复杂应用的能力 (Platform, Library, Methods, Architecture) (平台, 功能库, 方法, 架构) 1.2 抽象和建模 Abstraction and Modeling 我们建立处理某个业务的信息系统,这仅仅是整个组织功能的一部分,而且需要与其它系统部分进行交互。从整个系统中分离需要处理的问题往往不是一件容易的事情。人们通过“抽象”来处理这类复杂问题 “抽象”可以使系统分析人员集中关注所要解决问题的关键要素和特征。 面向对象方法通过下列一些步骤来分析问题: 标识和确认需要解决的问题 将问题抽象为若干对象,称为“发现对象” 为上述对象建立处理和数据模型; 抽象: 处理问题方法 通过裁减某个概念和现象信息进行归纳的过程,一般是为了保留那些与要达到的目的有关的信息。 区别出问题的关键和无关紧要的细节; 这个建模过程也可以叫抽象 This process of modeling is called abstraction 建模=抽象 一个模型就是为解决特定问题进行的抽象和创建的概念对象(conceptual object) 一个模型定义了一种对问题的视图,重点关注所要解决问题的特征,包括: 涉及到到数据 识别相应的数据操作 1.3 数据封装 Encapsulation 数据封装是一种将对象的内部机制与外部特征进行分离的方法和技术 一层胶囊(a capsule) 保护它自身的数据不受外部模块和函数的影响 内部数据结构等特征的变化不影响外部应用的运行 封装就是一个对程序进行打包的过程(packaging),将对象类分成两个部分:内部机制和外部接口 (the interface and the implementation) 封装是在程序设计是建立对象和对象类的一种方法和技巧 1.3 数据封装 Encapsulation 通过封装,可以实现模块化软件应用开发 可以有效地控制数据和信息交互 将内部架构和实施与外部特征和接口相分离 可以进行有效的应用集成 Ex: 第三方提供的类, COM控件, Web Service服务, software component软件构件 面向对象方法提供了一种将过程和数据进行集合的编程模型,过程和数据被“打包”在一起构成对象。这种简单实用的概念大大提高了应用系统的模块化程度,使系统开发和管理更加简化 面向对象的优点: 更好的灵活性,因为对象可以“独立”和“自治” 消除代码冗余,因为对象可以被有效地“重用” 简化应用程序,因为对象模块化,不需要开发和维护冗长的代码 提高开发效率,因为对象可以复制 1.4 面向对象编程 Object-Oriented Programming 对象是由抽象数据类型演变而来的 面向对象编程就是处理相互关联和互相影响的一批对象,每个对象拥有自身的数据 对象之间通过“发送消息”来相互作用 1.4 面向对象编程 Object-Oriented Programming 在面向对象程序开发中,一个对象向其它关联对象发送消息,而不是调用某个子程序和函数 可以粗略地认为, 每个对象就是一个模块实现 每个对象负责自己的初始化和结束。 面向对象方法和开发概念和核心 一切都是对象 every thing is a object 对象在运算过程中,通过消息机制相互作用 每个对象拥有自己的“内存”和数据,可以由其它对象组成 每个对象都是一个对象类(class)的实例(instance). 类聚合相类似的对象 对象类保存它的对象行为(程序、过程) 对象类通过一种树状的继承(inheritance)架构来进行组织 1、继承 Inheritance( Hierarchy ) 描述对象共有特征和差异之间的关系 可以很好地实现代码重用 较好地处理归纳和细分的关系 2、多态 Polymorphism 对象在同样调用时,能够进行区别处理的能力 对象在继承关系中,能够改变自身行为的能力
文档评论(0)