设计模式 解释器模式

解释器模式(Interpreter Pattern):定义语言的文法,并建立一个解释器来解释该语言中的句子,这里的"语言"的意思是使用规定格式的语法的代码,解释器模式是一种类型为型模式。

模式动机:

  如果在系统中某一特定类型的问题发生的频率很高,此时可以考虑将这些问题的实例表述为一个语言中的句子,因此可以构建一个解释器,该解释器可以通过解释这些句子来解决问题。

模式结构:

  • AbstractExpression:抽象表达式
  • TerminalExpression:终结符表达式
  • NonterminalExpression:非终结符表达式
  • Context: 环境类

模式分析:

  解释器模式描述了如何为一个简单的语言定义一个文法,如何在该语言中表示一个句子,以及如何解释这些句子。

具体类图实现:

解释器优缺点:

 优点

  • 易于改变和扩展文法
  • 易于实现文法
  • 增加了i虚拟的解释表达式的方式

 缺点:

  • 对于复杂的文法难以维护
  • 执行效率较低
  • 应用场景有限
原文地址:https://www.cnblogs.com/wfswf/p/15621502.html