Facade 外观模式(结构型模式)

介绍

  为子系统的一组接口提供一个一致的界面,Facade模式定义了一个高层的接口,这使得子系统更加容易使用。

外观模式参与者

  • Facade 外观
  • Subsystem 子系统
    例如:你要出去旅游,首先买票,然后游玩,然后坐车回来。

实现代码

class BuyTickets{//Subsystem 
public:
    void buying(){
        std::cout<<"先买票"<buying();
       travel->travling();
       backHome->back();
       delete buy;
       delete travel;
       delete backHome;
    }
};

int main()//客户端调用
{
    //一般我们这么做
    auto buy = new BuyTickets();
    auto travel = new Travel();
    auto backHome = new BackHome();
    buy->buying();
    travel->travling();
    backHome->back();
    std::cout<<"---------------------------------------------"<

优点

  • 对用户屏蔽子系统组件
  • 实现子系统与用户之间松耦合的关系

参考

《设计模式:可复用面向对象软件的基础》

你可能感兴趣的:(Facade 外观模式(结构型模式))