首页 > 代码库 > 设计模式(十) : 结构型模式--门面模式

设计模式(十) : 结构型模式--门面模式

门面模式要求一个子系统的外部和内部的通信必须通过通过一个门面对象进行。

在门面模式中,通常只需要一个门面类,并且门面类只有一个实例,也就是说他是一个单例类。当然这并不意味着,整个系统只能有一个门面类,而仅仅说每个子系统只能有一个门面类。

1. 什么情况下使用该模式:

A: 为了给一个复杂的系统提供一个简单的接口。

B:子系统的独立性:为了防止子系统和其他的子系统,客户端,实现层之间解耦。

C:层次化结构:如果层与层之间是相互依赖的,可以用fascade进行通信,这样简化了层与层之间的依赖关系。

2. 举例 类图

示意性代码就不写了,以为比较简单。

从类图中看到客户端和子系统的通信是通过securityfascade进行的。