首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
简单工厂模式
策略模式
单一职责原则
开放-封闭原则
依赖倒转原则
装饰模式
代理模式
工厂方法模式
原型模式
模版方法模式
迪米特法则
外观模式
建造者模式
观察者模式
抽象工厂模式
状态模式
适配器模式
备忘录模式
组合模式
迭代器模式
单例模式
桥接模式
命令模式
职责链模式
中介者模式
享元模式
解释器模式
访问者模式
设计模式总结
当前位置:
首页>>
技术小册>>
PHP程序员的设计模式
小册名称:PHP程序员的设计模式
1.简单工厂模式 ```php <?php /** * Operation */ class Operation { protected $a = 0; protected $b = 0; public function setA($a) { $this->a = $a; } public function setB($b) { $this->b = $b; } public function getResult() { $result = 0; return $result; } } /** * Add */ class OperationAdd extends Operation { public function getResult() { return $this->a + $this->b; } } /** * Mul */ class OperationMul extends Operation { public function getResult() { return $this->a * $this->b; } } /** * Sub */ class OperationSub extends Operation { public function getResult() { return $this->a - $this->b; } } /** * Div */ class OperationDiv extends Operation { public function getResult() { return $this->a / $this->b; } } /** * Operation Factory */ class OperationFactory { public static function createOperation($operation) { switch ($operation) { case '+': $oper = new OperationAdd(); break; case '-': $oper = new OperationSub(); break; case '/': $oper = new OperationDiv(); break; case '*': $oper = new OperationMul(); break; } return $oper; } } // 客户端代码 $operation = OperationFactory::createOperation('+'); $operation->setA(1); $operation->setB(2); echo $operation->getResult() . PHP_EOL; ``` 总结 > 学会通过分封装,继承,多态把程序的藕合度降低 > 复用,不是复制! > 高内聚,低耦合
下一篇:
策略模式
该分类下的相关小册推荐:
PHP8入门与项目实战(7)
PHP高并发秒杀入门与实战
PHP8入门与项目实战(2)
Laravel(10.x)从入门到精通(三)
PHP合辑1-基础入门
Swoole高性能框架-SwooleWorker
Magento零基础到架构师(内容设计)
Laravel(10.x)从入门到精通(十九)
Magento零基础到架构师(产品管理)
PHP合辑4-字符串函数
Laravel(10.x)从入门到精通(十八)
Magento零基础到架构师(库存管理)