通过 对象创建 模式绕开new,来避免对象创建(new)过程中所导致的紧耦合(依赖具体类),从而支持对象创建的稳定。它是接口抽象之后的第一步工作。 典型的模式: Factory Method 工厂方法模式 Abstract Factory 抽象工厂模式 Prototype 原型模式 Builder ...
分类:
其他好文 时间:
2019-06-08 00:27:28
阅读次数:
153
一、创建型模式 1、抽象工厂模式(AbstractFactory): 提供一个接口, 用于创建相关或依赖对象的家族, 而不需要指定具体类. 案例:https://www.cnblogs.com/lfxiao/p/6811820.html 2、生成器模式(Builder): 使用生成器模式封装一个产品 ...
分类:
编程语言 时间:
2019-06-07 21:02:26
阅读次数:
143
抽象工厂模式的优点 抽象工厂模式除了具有工厂方法模式的优点外,最主要的优点就是可以在类的内部对产品族进行约束。所谓的产品族,一般或多或少的都存在一定的关联,抽象工厂模式就可以在类内部对产品族的关联关系进行定义和描述,而不必专门引入一个新的类来进行管理。 抽象工厂模式的缺点 产品族的扩展将是一件十分费 ...
分类:
其他好文 时间:
2019-06-06 23:03:30
阅读次数:
227
简单工厂模式跟工厂方法模式极为相似, 区别是:简单工厂只有三个要素,他没有工厂接口,并且得到产品的方法一般是静态的。因为没有工厂接口,所以在工厂实现的扩展性方面稍弱,可以算所工厂方法模式的简化版 适用场景: 不管是简单工厂模式,工厂方法模式还是抽象工厂模式,他们具有类似的特性,所以他们的适用场景也是 ...
分类:
其他好文 时间:
2019-06-06 22:43:22
阅读次数:
236
例子背景:随着客户的要求越来越高,宝马车需要不同配置的空调和发动机等配件。于是这个工厂开始生产空调和发动机,用来组装汽车。这时候工厂有两个系列的产品:空调和发动机。宝马320系列配置A型号空调和A型号发动机,宝马230系列配置B型号空调和B型号发动机。 概念: 抽象工厂模式是工厂方法模式的升级版本, ...
分类:
其他好文 时间:
2019-06-06 19:33:32
阅读次数:
134
静态/简单工厂:缺点不修改代码无法扩展,违背OCP原则,但优点也很多,开发简单,但不利于后期扩展维护 工厂方法模式:解决了OCP问题,使用复杂一些 抽象工厂模式:上面2个是增加产品,属于1维的。这个是将产品组装形成新的产品。属于组的概念,符合OCP原则,缺点是复杂 ...
分类:
其他好文 时间:
2019-06-06 17:22:45
阅读次数:
77
工厂模式:根据不同的情况实例化不同的对象。 Factory 抽象工厂模式:接口来创建对象工厂,生成的工厂利用工厂模式创建对象。 产品族。 QQ换肤,切换操作系统,切换数据库(比如Oracle和SQLserver操作一个表 或者登陆操作)。 单例模式:所有的线程都操作同一个对象时,这个对象必须是唯一的 ...
分类:
其他好文 时间:
2019-05-29 23:50:08
阅读次数:
224
最近后台工作部分还算顺利,数据库Dao层使用简单工厂模式,一开始自己还是觉得是工厂模式,因为我没有深入了解过简单工厂模式与工厂模式的区别,后来通过复习工厂模式的时候才发现自己的理解是错误的。 在后台数据库层开发部分,自己定义了Dao接口用于表示对数据库操作的动作。对应每个Dao都有一个实现类对应,然 ...
分类:
其他好文 时间:
2019-05-28 17:17:14
阅读次数:
91
工厂模式分为:简单工厂模式、工厂方法模式和抽象工厂模式 1.简单工厂(simpleFactory) 简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂 ...
分类:
其他好文 时间:
2019-05-27 13:38:28
阅读次数:
97
抽象工厂模式 产品等级结构和产品族 工厂方法模式中具体工厂负责生产具体的产品 每一个具体工厂对应一种具体的产品 工厂方法具有唯一性 一般情况下:一个具体工厂中只有一个或一组重载的工厂方法 有时候希望一个一个工厂可以提供多个产品对象 而不是单一的产品对象 产品等级结构: 产品等级结构即产品的继承结构, ...
分类:
其他好文 时间:
2019-05-19 14:08:45
阅读次数:
86