解释器模式和访客模式之间有什么区别



我有麻烦理解这两种设计模式。

您可以给我上下文信息或示例,以便我可以明确的想法并能够绘制其中两个之间的区别。

谢谢。

访问者模式允许您在无需更改的情况下添加功能。对于不同类型的对象,您将单个位置/班级保持相同的行为,而(可能)每种类型具有不同的实现。您可以在单个类(访问者)工作时扩展或更改多种对象的行为。当您想扩展不在您无法控制的类的行为的情况下,而无需包装或扩展它们时,也很有用。

在访客中,行为驱动程序是基于执行操作的对象的类型的。

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

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

最新更新