设计模式——桥接模式

转载 2013年12月04日 23:41:44

        将抽象部分与它的实现部分分离,使它们都可以独立地变化。考虑装操作系统,有多种配置的计算机,同样也有多款操作系统。如何运用桥接模式呢?可以将操作系统和计算机分别抽象出来,让它们各自发展,减少它们的耦合度。当然了,两者之间有标准的接口。这样设计,不论是对于计算机,还是操作系统都是非常有利的。

       

//操作系统  
class OS  
{  
public:  
    virtual void InstallOS_Imp() {}  
};  
class WindowOS: public OS  
{  
public:  
    void InstallOS_Imp() { cout<<"安装Window操作系统"<<endl; }   
};  
class LinuxOS: public OS  
{  
public:  
    void InstallOS_Imp() { cout<<"安装Linux操作系统"<<endl; }   
};  
class UnixOS: public OS  
{  
public:  
    void InstallOS_Imp() { cout<<"安装Unix操作系统"<<endl; }   
};  
//计算机  
class Computer  
{  
public:  
    virtual void InstallOS(OS *os) {}  
};  
class DellComputer: public Computer  
{  
public:  
    void InstallOS(OS *os) { os->InstallOS_Imp(); }  
};  
class AppleComputer: public Computer  
{  
public:  
    void InstallOS(OS *os) { os->InstallOS_Imp(); }  
};  
class HPComputer: public Computer  
{  
public:  
    void InstallOS(OS *os) { os->InstallOS_Imp(); }  
}; 
int main()  
{  
    OS *os1 = new WindowOS();  
    OS *os2 = new LinuxOS();  
    Computer *computer1 = new AppleComputer();  
    computer1->InstallOS(os1);  
    computer1->InstallOS(os2);  
} 

桥接模式是适应多个维度变化的一种模式。桥接模式就是在于利用对象的组合将这两个维度上的变化分开。


相关文章推荐

设计模式C++实现(10)——桥接模式

软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最...

桥接模式——结构性设计模式之二

一、桥接模式 将抽象部分与它的实现部分分离,使他们都可以独立的变化。 什么叫抽象与它的是实现分离呢? 其实这并不是说,让抽象类与其派生类分离,这样也没有意义;实现指的是抽象类和它的派生类用来实现...

JAVA设计模式(十三)——桥接模式

1、桥接模式         Bridge模式又叫做桥接模式,是构造型的设计模式之一。Bridge模式基于类的最小设计原则,通过使用封装,聚合以及继承等行为来让不同的类承担不同的责任。它的主要特点是...

7-JavaScript设计模式——桥接模式

桥接模式 有以下三种使用场景: 1、事件监听回调机制的分离 2、特权函数(在作用域外部访问其内部私有成员变量的函数) 3、实现独立化单元

设计模式C++实现(10)——桥接模式

软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最...

C++与设计模式(10)——桥接模式

桥接模式 定义:将抽象部分与它的实现部分分离,使它们都可以独立地变化 这种说法可能不太好理解,那我们有另一种说法,桥接模式是将复杂变化的多个维度分开,通过组合的形式进行联系。举个例子,现在我们要写...

设计模式C++实现(10)——桥接模式

软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最...

设计模式——桥接模式(Bridge)

1、模式中的角色 2、角色关系图 3、实例

Java设计模式——桥接模式(Bridge)(容易,次要)

转自:http://blog.csdn.net/jason0539/article/details/22568865 生活中的一个例子:     拿汽车在路上行驶的来说。既有小汽车又有公共汽车,它们...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)