问题抛出:
对于C++程序来说,其编译过程可分为4个步骤:1)预编译;2)编译成汇编;3)汇编编译成机器码;4)链接成可执行程序。如果每一次编译程序,都要手动去按照这样的流程去编译,那操作将会很麻烦。
什么是Facade模式:
用过IDE开发环境的程序员都知道,它一般都会提供一个编译按钮,按了之后就会进行上面四个步骤,我们只需静待结果就行了。这个编译按钮可以理解为Facade模式,它提供一个接口(门面),调用这个接口后它将替我们干很多脏活累活。
感觉上它跟代理模式很像,就是多个操作的Proxy模式。
以下为Facade模式的UML类图。
编译按钮就做了这么一件事:
OperationWrapper()
{
预编译->Operation();
编译成汇编->Operation();
汇编转机器码->Operation();
链接->Operation();
};