突然发现,外观模式好像比单例还要简单,以至于我们经常用,都没注意到过它的存在

它的思想就是把复杂关进房间里,让外部保持干净

比如我们有个类Worker

1
2
3
4
5
6
7
8
9
10
11
12
class Worker {
public:
void process1() {

}
void process2() {

}
void process3() {

}
}

之前都是靠程序员我们自己去记住,让它工作需要先调process1,再调process2,最后调process3,后来我们稍微改下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Worker {
public:
void start() {
process1();
process2();
process3();
}
private:
void process1() {

}
void process2() {

}
void process3() {

}
}

把复杂的事情塞入start,外部只需要调用一个start,这就是外观模式