书城计算机网络大话设计模式
8183300000041

第41章 3 与适配器有什么不同

小A:“很多时候经常容易把桥接模式和适配器模式弄混。那什么时候用桥接,什么时候用适配器呢?有哪些共同点,又有哪些不同点哩?”

大B:“共同点:桥接和适配器都是让两个东西配合工作不同点:出发点不同。适配器:改变已有的两个接口,让他们相容。桥接模式:分离抽象化和实现,使两者的接口可以不同,目的是分离。所以说,如果你拿到两个已有模块,想让他们同时工作,那么你使用适配器。如果你还什么都没有,但是想分开实现,那么桥接是一个选择。桥接是先有桥,才有两端的东西,适配是先有两边的东西,才有适配器,桥接是在桥好了之后,两边的东西还可以变化。例如游戏手柄,就象个桥,它把你的任何操作转化成指令。虽然,你可以任何操作组合,但是你的操作脱不开上下左右,a,b,选择,确定。”

小A:“为什么啊?”

大B:“JRE本身就是一个就是一个很好的桥,先写好在linux上执行的JRE,再写好可以在windows下执行的JRE,这样无论什么样的Java程序,只要配和相应的JRE就能在Linux或者Windows上运行。两个JRE并没有限定你写什么样的程序,但要求你必须用Java来写。”