微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php桥接模式有什么作用

本文小编为大家详细介绍“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桥接模式有什么作用”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容文章,欢迎关注编程之家行业资讯频道。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐