外观设计模式,很多人都已经使用过,只是不知其名,一般一个很nice的系统,模块化做的都很不错,这样如果新来一个业务,只需要把各个模块组装起来就可以满足新的业务,
从程序的角度来说,就是我们只需要开一个类,然后不断的去调取模块方法,组装一下就OK,代码复用性比较良好,但对于新入职的员工来说,他们并不清楚,系统哪些都已经模块化,
这时,老员工使用外观模式就显得尤为重要,一般有经验的老员工都会提供一个接口给新员工调用,具体内部逻辑都是由老员工使用外观模式来完成,实际上老员工代码量很少。
大话设计模式-类图
让我们以做饭为例,看下实际JAVA代码:
/** * 子系统类 */ public class SubSystemOne { public void buyRice() { System.out.println("买米"); } }
/** * 子系统类 */ public class SubSystemTwo { public void washFood() { System.out.println("洗米洗菜"); } }
/** * 子系统类 */ public class SubSystemThree { public void makeFood() { System.out.println("做饭"); } }
/** * 客户端 */ public class Test { public static void main(String[] args) { Facade facade = new Facade(); facade.Method(); } }
输出结果为:
买米
洗米洗菜
做饭
可以看到做饭的过程都是有的,我们只需要把这些过程都串联起来,就是一个做饭的流程,可以看得出,系统模块化的如何,直接影响后续开发速度。
以上是笔者对外观模式的理解,希望能帮助学习的童鞋!