最近在学习游戏设计中的设计模式,为了让自己能够更好的去理解这些设计模式,所以将自己能够理解的部分纪录下来,以供提升。
开始学习,就接触了Facade模式,又称外观模式。这种模式能够很好的减少耦合度,将类的功能更加的单一化。
那么什么是Facade模式呢?举个例子,假设有一辆汽车,你需要去操作它,那么你需要去做些什么呢?比如,你想跑得更快,那么你就要踩油门,或者你想减速,那么你就要去踩刹车,当然,如果觉得无聊想去听点音乐,你就要打开收音机。你在操作的时候,需要做的其实很简单,与汽车的刹车,按钮等进行互动即可。其余的事情你不需要去关心,那些都是汽车自身的事情。Facade模式就是这样,用户不需要去担心一个东西的各个功能是如何具体操作的,只需要在它提供的界面上操作即可。就拿汽车来说,汽车是由很多的部件,即子系统组成的,例如加速系统,刹车系统,转向系统。而我们是如何去使用这些的呢?我们是使用汽车提供给我们的很多的按钮,脚板来使用这些功能的。即用简单的行为来操作复杂的系统。
其大致思想如上图,用户对于系统的操作,都是在操作界面上完成的,不会去关注这些功能是如何具体实现的。