首页 » Web前端 » php策略模式技巧_php常用设计模式之策略模式

php策略模式技巧_php常用设计模式之策略模式

访客 2024-10-23 0

扫一扫用手机浏览

文章目录 [+]

学习目标:

节制策略模式的含义节制策略模式设计实现举一反三实际开拓中运用设计模式策略模式含义

策略模式指的是程序中涉及决策掌握的一种模式,是一组算法的封装,动态选择须要的算法并利用。

php策略模式技巧_php常用设计模式之策略模式

策略模式的三种角色抽象策略角色详细策略角色环境角色(对抽象策略角色的引用)策略模式实现步骤

1.定义抽象角色类(定义好各个实现的共同抽象方法)

php策略模式技巧_php常用设计模式之策略模式
(图片来自网络侵删)

2.定义详细策略类(详细实现父类的共同方法)

3.定义环境角色类(传入抽象角色类,调用抽象策略类方法)

策略模式,生活中的实例:

例如放工回家,我可以有几个策略考虑:我可以骑单车,乘坐公交车,乘地铁等策略

还比如网站开拓个人中央页面,

不同的用户类型显示个人主页不一样,这个可以利用策略模式,即针对不同的用户利用不同的策略。

策略模式设计代码实现

//抽象策略类abstract class BaseUserStratege{ abstract public function center();//个人中央}//详细策略普通用户策略class CommonUserStratege extends BaseUserStratege{ public function center() { echo 'common user center'; }}//详细策略VIP用户策略class VipUserStratege extends BaseUserStratege{ public function center() { echo 'vip user center'; }}//环境角色,对抽象策略类的引用class UserStrategeContext{ private $baseUserStratege = null; public function __construct($baseUserStratege) { $this->baseUser = $baseUser; } public function center(){ return $this->baseUserStratege->center(); }}//根据不同用户类型创建不同的详细决策类,比如vip用户,就创建VipUser策略$user = new VipUserStratege();$userStrategeContext = new UserStrategeContext($user);$userStrategeContext->center();php7进阶到架构师干系阅读

https://www.kancloud.cn/gofor/gofor

末了,欢迎大家留言补充,谈论~~~
标签:

相关文章

房山第一探寻历史文化名区的魅力与发展

房山区,位于北京市西南部,历史悠久,文化底蕴深厚。作为北京市的一个重要组成部分,房山区的发展始终与首都的发展紧密相连。房山区积极推...

Web前端 2025-02-18 阅读1 评论0

手机话费开钻代码数字时代的便捷生活

我们的生活越来越离不开手机。手机话费作为手机使用过程中的重要组成部分,其充值方式也在不断创新。手机话费开钻代码应运而生,为用户提供...

Web前端 2025-02-18 阅读1 评论0

探寻专业奥秘如何查询自己专业的代码

计算机科学已成为当今社会不可或缺的一部分。掌握一门专业代码对于个人发展具有重要意义。面对繁杂的学科体系,如何查询自己专业的代码成为...

Web前端 2025-02-18 阅读1 评论0