设计模式(创建型模式)解析.ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
设计模式(创建型模式)解析

system overview system overview * 设计模式(创建型模式)解析 * 创建型模式 工厂模式(Factory) 抽象工程模式(AbstactFactory) 单例模式(Singleton) 建造模式(Builder) 原型模式(Prototype) * 工厂模式定义 工厂模式定义了一个类,这个类专门用于创建其他类的实例(根据传递的参数不同,返回不同类的实例),这些被创建的类都有一个共同的父类 * 工厂模式结构 * 工厂模式应用场景 1、 工厂类负责创建的对象比较少。 2、 客户端只知道传入工厂类的参数,对于如何创建对象不关心 * 抽象工厂模式 定义 抽象工厂模式提供一个接口,用于创建相关或者依赖对象的家族,而不需要明确指定具体类。抽象工厂允许客户端使用抽象的接口来创建一组相关的产品,而不需要关系实际产出的具体产品是什么。这样一来,客户就可以从具体的产品中被解耦。 * 抽象工厂模式结构 * 抽象工程模式应用场景 1. 一个系统不应当依赖于产品类实例如何被创建、组合和表达的细节,这对于所有类型的工厂模式都是重要的。 2.系统中有多于一个的产品族,而每次只使用其中某一产品族。 3. 属于同一个产品族的产品将在一起使用,这一约束必须在系统的设计中体现出来。 4. 系统提供一个产品类的库,所有的产品以同样的接口出现,从而使客户端不依赖于具体实现。 * 单例模式定义 单例模式就是确保某一个类只有一 个实例,并且提供一个全局访问点。 * 单例模式结构 * 单例模式应用场景 1、系统只需要一个实例对象,如系统要求提供一个唯一的序列号生成器,或者需要考虑资源消耗太大而只允许创建一个对象。 2、客户调用类的单个实例只允许使用一个公共访问点,除了该公共访问点,不能通过其他途径访问该实例。 * 建造者模式定义 将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。 * 建造者模式结构 * 建造者模式应用场景 1、需要生成的产品对象有复杂的内部结构,这些产品对象通常包含多个成员属性。 2、隔离复杂对象的创建和使用,并使得相同的创建过程可以创建不同的产品。 * 原型模式定义 用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象 * 原型模式结构 * 原型模式应用场景 1、如果创建新对象成本较大,我们可以利用已有的对象进行复制来获得。 2、如果系统要保存对象的状态,而对象的状态变化很小,或者对象本身占内存不大的时候,也可以使用原型模式配合备忘录模式来应用。相反,如果对象的状态变化很大,或者对象占用的内存很大,那么采 用状态模式会比原型模式更好。 * 原型模式应用场景 3、需要避免使用分层次的工厂类来创建分层次的对象,并且类的实例对象只有一个或很少的几个组合状态,通过复制原型对象得到新实例可能比使用构造函数创建一个新实例更加方便。 system overview system overview

文档评论(0)

wyjy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档