【起源】
Client需要使用 一个复杂的子系统(包含很多类),并且该系统在不断的改进。因此Client必须详细了解子系统的每个细节,然后才能投入使用(Client与子系统的耦合很深)。这需要耗费巨大的精力,如何使Client更轻松?答案是让Client只了解完成任务必须的相关部分,这就是Facade模式。
【动机】
为子系统中的一组接口提供一个一致的界面,让子系统更加容易使用。
【核心】
将一组耦合性很强的接口单独封装到一个类中,提供给Client使用。(很简单,就像你把火锅里的肉单独捞到碗里吃 o(∩_∩)o )
【代码实例】
【示意图】