(三)工厂方法模式

回到简单工厂模式,所有的水果都在这一个工厂里生产,那么每添加一种水果,就需要添加一个方法,或者说是要修改代码,而且水果越多,工厂类越庞大

这很明显违反了两个原则:

1、单一职责原则:一个工厂生产多种水果,而不是一种

2、开闭原则:添加水果需要修改工厂类的代码

工厂方法模式

将生产水果的方法抽象成一个接口,对于每种水果都创建一个工厂实现该接口


工厂方法模式

这种实现模式,如果有新的水果需要添加,新建一个工厂类即可,同时遵守了单一职责原则和开闭原则

总结

工厂方法模式的目的是为了让功能单一化,具备扩展性(单一职责原则,开闭原则)

你可能感兴趣的:((三)工厂方法模式)