设计模式之——简单工厂模式

小明 2025-05-05 08:56:26 8

上��为简单工厂模式的架构图。

1,产品(Product) 将会对接口进行声明。

2,具体产品(Concrete Products)是产品接口的不同实现。

3,创建者(Concrete Creators)将会重写基础工厂方法,使其返回不同类型的产品。

工厂模式在跨平台的对话框的应用:

       在不同的操作系统下,UI组件外观或许略有不同,但其功能保持一致。Windows系统中的按钮

       在Linux系统中仍是按钮,如果用工厂方法,就不需要为每种操作系统重写对话框逻辑。

简单工厂模式的理念:

1,对扩展开放,对修改关闭,当业务需要扩展或修改时,尽可能少的修改代码,以增加代码来代       替修改

2,依赖倒置,避免依赖具体的类,尽量依赖抽象的类,具体类虚继承抽象类  以此实现间接依赖。

      可以避免创建者和具体产品之间的紧密耦合。

3,单一职责原则。将产品创建代码放在程序的单一位置,从而使得代码更容易维护。

4,针对接口编程,不要针对实现编程

【缺点】:应用工厂方法模式需要引入许多新的子类,代码可能会因此变得更复杂,最好的情况是

                  将该模式引入创建者类的现有层次结构中。

#include

#include

using namespace std;

//交通方式

class Transport

{

public:

    virtual void doworking() = 0;

};

//卡车运输

class Truck : public Transport

{

public:

    virtual void doworking()

    {

        cout

The End
微信