你可以看《设计模式》的适用性。
,后者是行为模式,它的使用的是双分派技术,他独立出了对象的行为,不依赖于他的实现,他经常用和复合模式一起使用
Bridge和Vistor有区别,也有联系。
联 系:
chilopod 辛辛苦苦的写了两种方法实现同一问题,其中是有联系的,比如说它们都有动态的结合功能,通过在Client side 实例化不同的对象就可以得到不同的组合。
区 别:
首先在概念上有比较大的区别。其次,Vistor的扩展性比Bridge差,比如说我们再加一个SQL Server 数据库,那么Vistor首先要加一个SQL Server 类在抽象端,其次要改实现端的接口,而Bridge只需在实现端加一个SQL Server 的子类。还有Vistor的代码可读性不好。(个人意见)
俺花了功夫看了你的两个长长的用Bridge & Visitor实现的程序,,俺也写了自已的感受,你也多少给点意见好不好?期待中......
猜你喜欢
本站原创《复杂软件设计之道:领域驱动设计全面解析与实战》