设计模式22-Interpreter

本文最后更新于:a year ago

解释器模式

  解释器模式(Interpreter Pattern)提供了评估语言的语法或表达式的方式,它属于 行为型模式 。这种模式实现了一个表达式接口,该接口解释一个特定的上下文。这种模式被用在 SQL 解析、符号处理引擎等。

如果想了解解释器模式的具体的介绍,菜鸟教程介绍得比较详细↓
菜鸟教程-解释器模式

结构图


优缺点

优点:

1、可扩展性比较好,灵活。
2、增加了新的解释表达式的方式。
3、易于实现简单文法。

缺点:

1、可利用场景比较少。
2、对于复杂的文法比较难维护。
3、解释器模式会引起类膨胀。 4、解释器模式采用递归调用方法。

使用场景

1、可以将一个需要解释执行的语言中的句子表示为一个抽象语法树。
2、一些重复出现的问题可以用一种简单的语言来进行表达。
3、一个简单语法需要解释的场景。

实现代码

这个模式就不实现了,实用性太。。。所以这里就具体实现了,想要了解的可以去菜鸟教程看看,
网上很多对于解释器的分析都是从编译语言来分析的,
但只要在软件开发中,会遇到有些问题多次重复出现,而且有一定的相似性和规律性。
就都可以采用解释器模式
因为实在很难用到,而且也没有很好的理解,用的例子也是别人的,所以这里就不多介绍了

但学习这个模式的时候,还是看到一篇写得很好的文章,如果你对开发一门语言或者对它实现的原理感兴趣的话,可以看看👇
设计模式(二十)解释器模式


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!