AbstractFactory抽象工厂模式
项目架构
抽象产品
每一种产品都有一个产品的声明接口。
具体产品
每一个产品下有不同类型的实现,每一个产品都实现对应的产品接口。
抽象工厂
用于创建所有产品的声明接口。
具体工厂
具体的工厂对应产生具体的产品,用于创建这种产品。
客户端类
抽象工厂作为数据成员,其中可以执行各种抽象工厂定义的方法,及各种客户端需要处理的业务。
运行类
首先需要准备配置(具体工厂类),在配置文件中根据当前的需求实例话对应的具体工厂。
在运行时实例化客户端类,并对其传入配置文件(具体工厂类)。
此时客户端就可以根据当前的实际情况运行。
Reference
https://refactoringguru.cn/design-patterns/abstract-factory