工厂模式
工厂模式
工厂模式属于创建型模式,定义了一个用于创建对象的接口,让子类决定实例化哪一个类。工厂模式使一个类的实例化延迟到其子类
模拟场景:实现一个计算器的多种运算功能
下面代码演示:
autoload.php
具体运算类代码 Operation.php
工厂接口代码 FactoryInterface.php
加法工厂类 AddFactory.php
减法工厂类 SubFactory.php
乘法工厂类 MulFactory.php
除法工厂类 DivFactory.php
优点
工厂模式克服了简单工厂模式违背开放-封闭的原则,同时保留了简单工厂模式的优点
缺点
每增加一个产品,就需要增加一个产品工厂的类,增加了额外的开发量