设计模式:简单掌握工厂模式(要点和使用场景)


下面聊聊工厂模式

工厂模式两要点:

1.工厂接口是工厂方法模式的核心,与调用者直接交互用来提供产品。

2.工厂实现决定如何实例化产品,是实现扩展的途径,需要有多少种产品,就需要有多少个具体的工厂实现。

适用场景:

1.在任何需要生成复杂对象的地方,都可以使用工厂方法模式。有一点需要注意的地方就是复杂对象适合使用工厂模式,而简单对象,特别是只需要通过new就可以完成创建的对象,无需使用工厂模式。

2.工厂模式是一种典型的解耦模式,迪米特法则在工厂模式中表现的尤为明显。假如调用者自己组装产品需要增加依赖关系时,可以考虑使用工厂模式。将会大大降低对象之间的耦合度。

3.当需要系统有比较好的扩展性时,可以考虑工厂模式,不同的产品用不同的实现工厂来组装。

工厂方法或者类生成对象,而不是代码中直接new

多用来生成对象

好处,如果多个文件都使用这个类的话,如果修改需要去每个文件下都进行修改,用工厂模式的话,则只用在类里面修改创建方法就好了

很多其他高级的设计模式都是依赖工厂模式的

<?php

namespace Imooc;

class Factory{

static function createDatabase(){

$db = new Database;

return$db;

}

}
调用方式

$db= Imooc\Factory::createDatabase();

这样就能代替new的方法了

喜欢的朋友就关注我吧

【羊崽】【科技】【互联网】