一.外观模式
要求一个子系统的外部与其内部通行必须通过一个同一的对象进行.以降低访问复杂系统的内部子系统时的复杂度,简化客户端之间的接口
二.问题引出
假如你需要开一个证明,你需要跑街道办,公安局,所在单位,公证处等,很麻烦.好消息是国家体制化改革,现在只需要去一个统一开证明的点就能开证明,他会帮你去其他地方办,从此以后,你都只去该点开证明访问证明系统,这丫就大大减少了复杂度
三.代码模板
//系统内部
class SubFlow1{
boolean isTrue(){
return true;
}
}
class SubFlow2{
boolean isOk(){
return true;
}
}
class SubFlow3{
boolean isNice(){
return true;
}
}
//通过该类访问系统
class Facade{
SubFlow1 s1 = new SubFlow1();
SubFlow2 s2 = new SubFlow2();
SubFlow3 s3 = new SubFlow3();
boolean prove(){
return s1.isTrue()&&s2.isOk()&&s3.isNice();
}
}
有一个缺点就是和之前的不一样,不符合开闭原则,一旦添加就得修改原有类