visitor 模式
起源
delphi中的visitor模式在基本visitor模式进行了扩展。更多visitor模式的资料请参 [gam+, pages 331..344].
目的
表示一个作用于某个对象结构的中和元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。
[gam+, page 331].
动机
考虑一个面向对象的建模工具,比如说‘rational rose、modelmaker’,它将一个模型表示为类和类的成员。
在建模工具上提供了许多操作成员功能,比如:列表类的所有成员、生成类的代码框架、反向工程等。
这些操作大多对不同的成员进行不同的操作。它将成员分成字段(fields)、方法(methods)、
属性(properties)。因些我们必须建立专门处理字段的类,专门处理methods的类等等。成员类的集合当然依赖被编译的语言。但对于一给定语言变化不大。