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