外观模式主要为了方便客户端代码对复杂子系统的访问。为子系统的一组接口提供一个一致的界面(即外观类)。此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
代码结构:
1.客户端代码,用于访问的代码
2.外观类(关键),定义了一组简单接口,用于访问子系统的复杂功能。可以了解子系统的任意方法和属性以便客户使用
3.被用来访问的复杂子系统类。
何时用:在设计初期阶段应该有意识的将不同的两个层分离,比如数据访问层与业务逻辑层以及表示层,层与层之间建立外观类,可以为复杂的子系统提供一个简单得接口,使耦合性大大降低。