php设计模式--工厂模式
这几天了解到了得好好学习下PHP的设计模式,所以找了些资料来标记,每天进步一小步哈! 1.工厂模式 工厂模式最大的优点在于创建对象,有点适配器的感觉,大体上是根据不同的参数,工厂去实现不同的对象,返回给调用者,工厂把实例对象的过程封装起来。 减少代码进行复制粘帖,耦合关系重,牵一发动其他部分代码。 通俗的说,以前创建一个对象要使用new,现在把这个过程封装起来了。 假设不使用工厂模式:那么很多地方调用类a,代码就会这样子创建一个实例:new a(),假设某天需要把a类的名称修改,意味着很多调用的代码都要修改。 工厂模式的优点就在创建对象上。建立一个工厂(一个函数或一个类方法)来制造新的对象,它的任务就是把对象的创建过程都封装起来, 创建对象不是使用new的形式了。而是定义一个方法,用于创建对象实例。 其实工厂模式的设计思想最主要的是根据不同的参数去实例不同的对象,返回给调用者,这是工厂模式设计思想的精髓。 工厂模式我想到的一个典型的应用就是:php可能要链接mysql,也可能要链接sqlserver,还有其他什么数据库。那么做一个抽象的数据库类, 这个类就是一个工厂类,专门负责产生不同的对象。 class DbFactory { function static factory($db_class_name) { $db_class_name =