在一个应用程序中,我有很多 dirrerent 对象,比如说:正方形、圆形等......很多不同的形状 ---> 我很抱歉这个微不足道的例子。
对于所有这些对象,我想创建一个不同类型的文档:xml、txt、html 等。(例如:我想扫描所有对象(形状)树并生成 xml 文件。
我认为的自然方法是访问者模式,我尝试过并且它有效:-) - 所有对象都有一个接受 IVisitor 接口的访问方法。- 对于我想要创建的每一种类型,我都有一个具体的访问者:(XmlVisitor
、、TxtVisitor
等)。每个访问者对每种对象都有一个“访问”方法。
我的疑问是......如果我有很多对象,它似乎不能很好地扩展......从逻辑的角度来看没关系,我只需在具体的访问者中添加新的形状和方法,就这样。
你怎么看 ?有可能吗?