[b][color=red][size=x-large]2.1 Facade [/size][/color][/b]
外观模式
定义:它为子系统中的一组接口提供一个统一的高层接口。使得子系统更容易使用。
[img]http://dl.iteye.com/upload/picture/pic/66666/0d762a5a-b107-3b54-8099-a44f0f38d53d.jpg[/img]
Facade有如下的优点:
1、 他对客户屏蔽了子系统组件,从而减少了客户处理对象的个数,使得子系统使用起来更加的方便。
2、它实现了子系统与客户之间的松耦合的关系,而子系统内部的 功能组件往往是紧耦合的。
3、 若果需要,它并不限制他们使用子系统类。因此你可以在系统易用性和通用性之间加以选择。
外观模式
定义:它为子系统中的一组接口提供一个统一的高层接口。使得子系统更容易使用。
[img]http://dl.iteye.com/upload/picture/pic/66666/0d762a5a-b107-3b54-8099-a44f0f38d53d.jpg[/img]
Facade有如下的优点:
1、 他对客户屏蔽了子系统组件,从而减少了客户处理对象的个数,使得子系统使用起来更加的方便。
2、它实现了子系统与客户之间的松耦合的关系,而子系统内部的 功能组件往往是紧耦合的。
3、 若果需要,它并不限制他们使用子系统类。因此你可以在系统易用性和通用性之间加以选择。
public class SubSystemA {
protected SubSystemA ( ) {
System.out.println("SubSystemA ");
}
}
public class SubSystemB{
protected SubSystemB ( ) {
System.out.println("SubSystemA ");
}
}
public class SubSystemC {
protected SubSystemC ( ) {
System.out.println("SubSystemA ");
}
}
// facade class
public class Facade {
public void doAll( ) {
SubSystemA systemA = new SubSystemA ();
SubSystemA systemA = new SubSystemA ();
SubSystemA systemA = new SubSystemA ();
}
public static void main(String[] args) {
new Facade().doAll;
}
}