Chap1面向对象设计原则.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文档。上传文档
查看更多
设计模式 厉小军 浙江工商大学信息学院 * 软件设计存在问题及对策 负责任地设计对象 负责任地设计对象 负责任地设计对象 负责任地设计对象 负责任地设计对象 负责任地设计对象 负责任地设计对象 负责任地设计对象 负责任地设计对象 负责任地设计对象 负责任地设计对象 负责任地设计对象 什么是模式(pattern) ? 什么是模式(pattern) ? 模式无处不在! 生产模式:刀耕火种,机械化大生产 写作模式:八股文 解题模式:数形结合,反证法  教育模式:小学-初中-高中-大学-研究生 战术模式:如“三十六计” 政体模式:三权分立,君主立宪 什么是设计模式(design pattern) ?  什么是设计模式(design pattern) ? 什么是设计模式(design pattern) ? 1978年,Glenn E. Krasner 和 Stephen T. Pope,利用Christopher Alexander在建筑设计领域里的思想,开发了设计模式,并把此思想应用在Smalltalk中的图形用户接口的生成中。 什么是设计模式(design pattern) ? 模式的四要素 模式名 (pattern name): 帮助记忆的名字,便于交流。 问题 (problem):          该模式所要解决的问题描述和问题的前因后果。 解决方案 (solution):          怎样构造出该模式,以及怎样用它来解决问题。 效果 (consequences):          运用该模式得到的结果和利弊。 设计模式的组织分类 各个设计模式在粒度和抽象层次上各不相同。由于存在众多的设计模式,我们希望用一种方式将它们组织起来。 设计模式的组织分类 创建型类模式将对象的部分创建工作延迟到子类,而创建型对象模式则将它延迟到另一个对象中。 设计模式的组织分类 结构型类模式使用继承机制来组合类,而结构型对象模式则描述了对象的组装方式。 设计模式的组织分类 行为型类模式使用继承描述算法和控制流,而行为型对象模式则描述一组对象怎样协作完成单个对象所无法完成的任务。 开始设计模式之旅 下面就简单地介绍GoF中的23个设计模式 1.Simple Factory(简单工厂) 意图 根据提供给它的数据,返回几个可能类中的一个类的实例。通常它返回的类都有一个公共的父类和公共的方法。 Simple Factory模式实际上不是GoF 23个设计模式中的一员。 1.Simple Factory (抽象工厂) Simple Factory模式在实际系统中的实现 2.Factory Method(工厂方法) 意图 定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类。 2. Factory Method(工厂方法) Factory Method模式在实际系统中的实现 3.Abstract Factory(抽象工厂) 意图 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。指一个工厂等级结构可以创建出分属于不同产品等级结构的一个产品族中的所有对象。 3.Abstract Factory (抽象工厂) 3.Abstract Factory (抽象工厂) 抽象工厂的起源 3.Abstract Factory (抽象工厂) Abstract Factory模式在实际系统中的实现 4.Builder(建造者或生成器) 意图 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示 。 4.Builder (建造者) Builder模式在实际系统中的实现 5.Prototype(原型) 意图 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 5.Prototype(原型) Prototype模式在实际系统中的实现 6.Singleton(单件) 意图 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 6.Singleton(单件) Singleton模式在实际系统中的实现 创建模式的总结 生成创建对象类的子类,Factory Method模式。主要缺点是, 仅为了改变产品类,就可能需要创建一个新的子类。这样的改变可能是级联的。 更多的依赖于对象复合:定义一个对象负责明确产品对象的类,并将它作为该系统的参数。Abstract Factoy由这个工厂对象产生多个类的对象。Builder由这个对象使用一个相对复杂的协议,逐步创建一个复杂产品。Prototype由该工厂对象通过拷贝原型对象来创建产品对象。 结构模式 结构模式(Structural Pattern)描述如何将类或者对象结

文档评论(0)

好文精选 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档