![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
匠艺
一只小白飘在代码中
展开
-
设计模式—建造者模式(Builder Pattern)
动机在我们的生活当中,都会见到一些由多个零件组成的完整对象,大多数的人几乎不会去了解这个完整的对象是怎么组成的,也不会在乎其中的单个零件是什么,而是只想直接使用这个完整的对象。例如汽车,它包括轮子、方向盘、发动机等各种部件,在多数人买车的时候,不是买这些部件来进行组装,而是直接买一辆完整的车,此时就能够使用建造者模式。概述建造者模式(Builder Pattern):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一步一步创建一个复杂的对象,它允许用户只通过指定复原创 2020-06-20 15:37:09 · 281 阅读 · 0 评论 -
设计模式—抽象工厂模式(Abstract Factory Pattern)
动机在了解动机之前,先回顾一下工厂方法模式:在工厂方法模式中,工厂类都是对单一产品对象进行操作,每一个具体工厂对应一种具体产品,工厂方法具有唯一性,一般情况下,一个具体工厂中只有一个工厂方法或者一组重载的工厂方法。问题:如果想要一个工厂对多个产品对象进行操作,而不是只对单一产品进行操作,那么工厂方法模式就会变得很复杂,如何解决呢?当系统所提供的工厂所需生产的具体产品并不是一个单一产品,而是多个位于不同继承结构之间的不同类型的产品组成的产品族,这时候就需要使用到抽象工厂模式。继承结构:如一原创 2020-06-16 22:48:20 · 194 阅读 · 0 评论 -
设计模式—工厂方法模式(Factory Method Pattern)
动机相比于简单工厂模式,不再设计一个统一的动物工厂类来负责所有动物的创建,而是将具体动物的创建过程交给专门的工厂子类去完成,首先定义抽象的动物工厂类,再定义具体动物的工厂子类(例如猫,狗等等)。这种抽象化的结果使这种结构可以在不修改具体工厂类的情况下创建新的动物,如果出现新的动物,只需要为这种新类型的动物创建一个具体的工厂类就可以获得该新动物的实例。概述工厂方法模式(Factory Method Pattern)又称为工厂模式,也叫虚拟构造器(Virtual Constructor)模式或者多态工厂(原创 2020-06-15 22:04:37 · 165 阅读 · 0 评论 -
设计模式—简单工厂模式(Simple Factory Pattern)
简单工厂模式(Simple Factory Pattern)动机考虑一个简单的场景,不同的动物有不同的叫声(如狗叫是“汪汪汪”,猫叫是“喵喵喵”等),这些狗、猫等等动物都来源于动物这个基类,只是每个动物的叫声不同。不需要知道这具体是什么叫声,只需要知道是什么动物,就可知道每个动物是什么叫声。此时,就可以使用简单工厂模式。概述简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,可以根据原创 2020-06-11 23:34:38 · 221 阅读 · 0 评论