编程中的那些套路——关于策略模式

该文章属于《编程中的那些经典套路——设计模式汇总》系列,并且以下内容基于语言PHP 今天讲讲策略模式,策略模式 和工厂模式十分相像(或者说在代码逻辑层面,他们是一样的)。 但策略模式与工厂模式有一点很重要的区别: 工厂模式:我们着眼于得到对象,并操作对象, 策略模式:我们着重得到对象某方法的运行结果 看代码 object = new Firstaid();$this->ob

该文章属于《编程中的那些经典套路——设计模式汇总》系列,并且以下内容基于语言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

?>

根据不同的情况使用不同的策略,即策略模式,与工厂模式确实很像,但他确确实实不是工厂模式,重点看人如何定义它,为了操作对象即为工厂模式,为了获取结果即为策略模式。

该文章属于《编程中的那些经典套路——设计模式汇总》系列

关键字:php, 设计模式, 面试相关, 编程思想