0

我很难理解这两种设计模式。

您能否给我上下文信息或示例,以便我可以清楚地了解并能够绘制出两者之间的差异。

谢谢。

4

1 回答 1

5

访问者模式允许您在不更改类的情况下向类添加功能。对于不同类型的对象,您将相同的行为保持在一个地方/类中,而(可能)对每种类型有不同的实现。您可以在处理单个类(访问者)时扩展或更改多种对象的行为。当您想要扩展不受您控制的类的行为而不包装或扩展它们时也很有用。

在访问者中,行为的驱动程序基于代表执行操作的对象类型。

解释器模式可用于可以用简单的语言/句子表达的领域问题。然后可以通过解释这些句子来解决问题。所以我们得到一个输入,我们可以理解(解释)它,然后根据输入的解释/分类来实现某些行为。

在解释器中,行为的驱动程序基于输入是什么,即输入的解释/分类。

于 2019-03-19T16:50:04.830 回答