读书人

设计方式之Visitor

发布时间: 2012-07-01 13:15:00 作者: rapoo

设计模式之Visitor

State模式将不同的状态与与其对应的行为封装在了State对象中。

?

而Visitor模式却是将结构与行为分离开。

不同的结构产生不同的行为。

但是,大量的if和else让我们感到厌烦。

于是乎,Visitor出现了。

?

模式的控制权在Element/Visitable手上。其accept(Visitor)方法规定了其是否可以被Visitor访问。

Visitor可以访问Element的内部状态但是不可以改变其结构。

Visitor必须为每一个具体的Element定义一个可以被访问的的接口。

?

所以,使用Visitor模式最好是保持Visitor稳定不变。即行为不要有太大的变动。

读书人网 >软件开发

热点推荐