该文章属于系列,并且以下内容基于语言PHP
今天讲讲策略模式,策略模式 和工厂模式十分相像(或者说在代码逻辑层面,他们是一样的)。
但策略模式与工厂模式有一点很重要的区别:
工厂模式:我们着眼于得到对象,并操作对象,
策略模式:我们着重得到对象某方法的运行结果
看代码
object = new Firstaid(); $this->object->help(); } } //实际对外的120接口 class Help120 implements Factory{ public $object; public function action(){ $this->object = new Call120(); $this->object->help(); } } $Help = new Help120(); $Help->action();//output 打120 ?>
根据不同的情况使用不同的策略,即策略模式,与工厂模式确实很像,但他确确实实不是工厂模式,重点看人如何定义它,为了操作对象即为工厂模式,为了获取结果即为策略模式。