kotlin访问者设计模式

访问者模式是一个相对比较简单,但结构又稍显复杂的模式,它讲的是表示一个作用于某对象结构中的各元素的操作,它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。例如,你在朋友家做客,你是访问者,朋友接受你的访问,你通过朋友的描述,然后对朋友的描述做出一个判断,这就是访问者模式。


访问者模式(Visitor)封装一些作用于某种数据结构的各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。UML结构图如下:


其中,Visitor是抽象访问者,为该对象结构中ConcreteElement的每一个类声明一个Visit操作;ConcreteVisitor是具体访问者,实现每个由visitor声明的操作,是每个操作实现算法的一部分,而该算法片段是对应于结构中对象的类;ObjectStructure为能枚举它的元素,可以提供一个高层的接口以允许访问者访问它的元素;Element定义了一个Accept操作,它以一个访问者为参数;ConcreteElement为具体元素,实现Accept操作。


其实访问者需要对一个对象结构中的对象进行很多不同的并且不相关的操作,而需要避免让这些操作”污染”这些对象的类,使用访问者模式将这些封装到类中。


所以采用这个设计模式的好处就是,我们类中方法的实现,放到外部实现,这样使得类结构比较单纯。



本篇文章来源于微信公众号: 技术刚刚好

免责声明:本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有,本站发布的内容若侵犯到您的权益,请联系站长删除,我们将及时处理!
安全观察-网赚平台 » kotlin访问者设计模式

发表评论

提供最优质的资源集合

立即查看 了解详情