php桥接模式有什么作用
更新:HHH   时间:2023-1-7


本文小编为大家详细介绍“php桥接模式有什么作用”,内容详细,步骤清晰,细节处理妥当,希望这篇“php桥接模式有什么作用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

作用说明

1、桥接模式分离抽象接口及其实现部分,实现解耦,比继承更好的解决方案。

2、便于扩展,桥接模式比继承更灵活,在减少创建类的同时也便于组合。

3、桥接模式可用于两个独立变化维度。

实例

// 员工分组
 
 
abstract class Staff
{
    abstract public function staffData();
}
 
class CommonStaff extends Staff
{
    public function staffData()
    {
        return "小名,小红,小黑";
    }
}
 
class VipStaff extends Staff
{
    public function staffData()
    {
        return '小星、小龙';
    }
}
 
 
 
 
 
// 发送形式
 
// 抽象父类
abstract class SendType
{
    abstract public function send($to, $content);
}
 
class QQSend extends SendType
{
    public function __construct()
    {
        // 与QQ接口连接方式
    }
 
    public function send($to, $content)
    {
        return $content. '(To '. $to . ' From QQ)<br>';
    }
}
 
 
 
 
class SendInfo
{
    protected $_level;
    protected $_method;
 
    public function __construct($level, $method)
    {
        //  这里可以使用单例控制资源的消耗
        $this->_level = $level;
        $this->_method = $method;
    }
 
    public function sending($content)
    {
        $staffArr = $this->_level->staffData();
        $result = $this->_method->send($staffArr, $content);
        echo $result;
    }
}
 
 
 
// 客户端调用
 
$info = new SendInfo(new VipStaff(), new QQSend());
$info->sending( '回家吃饭');
 
$info = new SendInfo(new CommonStaff(), new QQSend());
$info->sending( '继续上班');
输出结果:
 
回家吃饭(To 小星、小龙 From QQ)
继续上班(To 小名,小红,小黑 From QQ)

读到这里,这篇“php桥接模式有什么作用”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注天达云行业资讯频道。

返回大数据教程...