外观模式
提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。
应用分析
外观没有“封装”子系统的类,外观只提供简化的接口。所以客户如果觉得有必要,仍可以直接使用子系统的类。
外观只是让子系统更方便。一个子系统可以建立多个外观。
外观模式也允许将客户从任何子系统中解耦。
外观和适配器可以包装许多类,但是外观的意图是简化接口,而适配器的意图是将接口转换成不同接口。
有了外观模式,通过实现一个提供更合理的接口的外观类,你可以将一个复杂的子系统变得更容易使用。
实例分析
一个家庭影院,内含DVD播放器、投影机、自动屏幕、环绕立体声,甚至爆米花机。每次看电影都需要进行一系列操作,我们定义一个外观模式,通过其的几个简单接口可以调用子系统,实现这一功能。