01面向对象_思想.pptx

  1. 1、本文档共97页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象程序设计方法山东大学计算机学院引言如何学习(面向对象的)软件分析设计?本质上是一种“能力” 可“学” 难“教”In theory practice is the same as theory. In practice it isnt. -- Adam Smith 纸上得来终觉浅,绝知此事要躬行。 ——冬夜读书示子聿 (陆游·宋)引言学习OO软件设计从程序设计开始建立对象计算基本概念;从程序组织到运行机制;知道什么样的结构可以被有效/高效实现;知道什么对设计变动敏感,什么不敏感;学习前人经验!设计模式 -- 解决反复出现的问题的设计经验参考书籍《UML用户指南》 2001年[美]Grady Booch等,机械工业出版社《设计模式:可复用面向对象软件的基础》2000年[美]Erich Gamma等, 机械工业出版社《Java与模式》 2002年 闫宏,电子工业出版社《面向对象系统分析与设计》2000年[美]Ronald J.Norman,清华大学出版社课程主要内容面向对象基本概念和原理UML基础面向对象设计原则面向对象设计模式周次时数内 容12面向对象思想发展历程、引论22对象和抽象32类和方法42消息、实例和初始化教学日历??周次时数内 容52继承、替换62子类、子类型、反射机制72静态行为、动态行为、替换本质82多重继承教学日历??周次时数内 容92多态和软件复用(重载、改写、多态变量)102泛型、对象互连112UML基础122UML图和关系教学日历???周次时数内 容132面向对象设计原则-OCP、LSP、DIP142面向对象设计原则-ISP、CRP、LOD152设计模式-工厂、单例162设计模式-策略、适配器教学日历??什么是面向对象面向对象的方法是一种分析方法、设计方法和思维方法。面向对象方法学的出发点和所追求的基本目标是使人们分析、设计与实现一个系统的方法尽可能接近人们认识一个系统的方法。使描述问题的问题空间和解决问题的方法空间在结构上尽可能一致。面向对象基本思想对问题空间进行自然分割,以更接近人类思维的方式建立问题域模型,以便对客观实体进行结构模拟和行为模拟,从而使设计出的软件尽可能直接地描述现实世界。构造出模块化的、可重用的、维护性好的软件,同时限制软件的复杂性和降低开发维护费用。什么是面向对象从程序设计方法的角度看,面向对象是一种新的程序设计范型(paradigm),其基本思想是使用对象、类、继承、封装、聚合、关联、消息、多态性等基本概念来进行程序设计。自八十年代以来,面向对象方法已深入到计算机软件领域的几乎所有分支。它不仅是一些具体的软件开发技术与策略,而且是一整套关于如何看待软件系统与现实世界的关系,用什么观点来研究问题并进行问题求解,以及如何进行系统构造的软件方法学。从这个意义上讲:面向对象方法是一种运用对象、类、继承、封装、聚合、关联、消息、多态性等概念来构造系统的软件开发方法。基本思想从现实世界中客观存在的事物出发来建立软件系统强调直接以问题域(现实世界)中的事物为中心来思考问题、认识问题,并根据这些事物的本质特征,把它们抽象地表示为系统中的对象,作为系统的基本构成单位。这可以使系统直接映射问题域,保持问题域中事物及其相互关系的本来面貌充分运用人类日常的思维方法强调运用人类在日常的逻辑思维中经常采用的思想方法与原则,例如抽象、分类、继承、聚合、封装、关联等等。这使得软件开发者能更有效地思考问题,并以其他人也能看得懂的方式把自己的认识表达出来。主要特点:从问题域中客观存在的事物出发来构造软件系统,用对象作为对这些事物的抽象表示,并作为系统的基本构成单位。(对象)用对象的属性表示事物的静态特征;用对象的服务(操作)表示事物的动态特征。(属性与服务)对象的属性与服务结合为一体,成为一个独立的、不可分的实体,对外屏蔽其内部细节。(封装)对事物进行分类。把具有相同属性和相同服务的对象归为一类,类是这些对象的抽象描述,每个对象是它的类的一个实例。(分类)通过在不同程度上运用抽象的原则可以得到较一般的类和较特殊的类。特殊类继承一般类的属性与服务,从而简化系统的构造过程及其文档。(继承)复杂的对象可以用简单的对象作为其构成部分。(聚合)对象之间通过消息进行通讯,以实现对象之间的动态联系。(消息)通过关联表达对象之间的静态关系。(关联)总结:用类和对象作为系统的基本构成单位。对象对应问题域中的事物,其属性与服务刻画了事物的静态特征和动态特征,它们之间的继承关系、聚合关系、消息和关联如实地表达了问题域中事物之间实际存在的各种关系。因此,无论系统的构成成分,还是通过这些成分之间的关系而体现的系统结构,都可直接地映射问题域。从认识论看面

文档评论(0)

白领文档(原创) + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档