面向对象软件工程PPT课件.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象软件工程PPT课件

1.2 面向对象的概念 消息 消息是指对象间相互联系和相互作用的方式。一个消息主要由5部 分组成:发送消息的对象、接收消息的对象、消息传递办法、消息 内容(参数)、反馈。 4.9 模式编程介绍 程序设计是思维具体化的一种方式,是思考如何解决问题的过 程,设计模式是在解决问题的过程中,一些良好思路的经验集成, 最早讲设计模式,人们总会提到 Gof 的著作,它最早将经典的 23 种模式集合在一起说明,对后期学习程序设计,尤其是对从事对象 导向程序设计的人们起了莫大的影响。 面向对象的设计模式主要有三种: 创建 ( Creational )模式。 结构 ( Structural )模式。 行为 ( Behavioral )模式。 4.9 模式编程介绍 创建 ( Creational )模式 对象的产生需要消耗系统资源,所以如何有效率的产生、管理与 操作对象,一直都是值得讨论的课题, Creational 模式即与对象的 建立相关,在这个分类下的模式给出了一些指导原则及设计的方 向。 在这里主要介绍创建 ( Creational )模式中的: 单态(Singleton)模式 简单工厂(Simple Factory)模式 4.9 模式编程介绍 单态(Singleton)模式 动机 在软件系统中,经常有这样一些特殊的类,必须保证它在整个系 统中只存在一个实例,才能确保它们的逻辑正确性以及良好的效 率。 如何绕过常规的构造器,提供一种机制来保证一个类只有一个实 例? 这应该是类设计者的责任,而不是使用者的责任! 4.9 模式编程介绍 单态(Singleton)模式 意图 保证一个类仅有一个实例,并提供一个该实例的全局访问点。 ——《设计模式》GoF 4.9 模式编程介绍 单态(Singleton)模式 单态(Singleton)模式的UML结构类图如下: 4.9 模式编程介绍 单态(Singleton)模式 单态(Singleton)模式的几个要点: Singleton模式中的实例构造器可以根据需要设计成protected以允许子类派生。 Singleton模式只考虑到了对象创建的管理,没有考虑到对象销毁的管理。就支持垃圾回收的平台和对象的开销来讲,我们一般没有必要对其销毁做特殊的管理。 不能应对多线程环境:在多线程环境下,使用Singleton模式仍然有可能得到Singleton类的多个对象。 4.9 模式编程介绍 简单工厂(Simple Factory)模式 new的问题 常规的对象创建方法: A a = new A(); new的问题: ——实现依赖,不能应对“具体实例化类型”的变化。 解决思路: ——封装变化点(哪里变化,封装哪里)。 ——潜台词:如果没有变化,当然不需要额外的封装。 4.9 模式编程介绍 简单工厂(Simple Factory)模式 工厂模式的缘起 变化点在对象创建,因此就封装对象创建。 面向接口编程——依赖接口,而非依赖具体实现。 Simple Factory模式(又称Static Factory模式)就是应用的这种 方式。一个Simple Factory生产成品,而对客户端隐藏产品产生的细 节。实现时定义一个产品接口(interface),并透过特定静态方法 来建立成品。 4.9 模式编程介绍 简单工厂(Simple Factory)模式 假设有一个八音盒工厂,购买八音盒的客人不用知道八音盒是如 何制作的,他只要知道如何播放八音盒就可以了,以 UML 类别图来 表示以上的概念: 父类Sample 子类 MySample MySample Sample mysample=new MySample(); Sample hissample=new HisSample(); public class Factory{   public static Sample creator(int which){   //getClass 产生Sample 一般可使用动态类装载装入类。   if (which==1)     return new SampleA();   else if (which==2)     return new SampleB();   } } Sample sampleA=Factory.creator(1); 1.4 设计模式介绍 结构(Structural)模式 如何设计对象之间的静态结构,如何完成对象之间的继承、实现 与依赖关系,这关乎着系统设计出来是否健壮(robust):像是易 懂、易维护、易修改、耦合度低等等议题。Structural 模式正如其 名,其分类下

文档评论(0)

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

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

1亿VIP精品文档

相关文档