美文网首页
设计模式(十六):解释器模式

设计模式(十六):解释器模式

作者: 何笙 | 来源:发表于2019-05-17 10:34 被阅读0次

    给定一个语言,定义它的文法表示,并定义一个解释器,这个解释器使用该标识来解释语言中的句子。

    何时使用:如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子。这样就可以构建一个解释器,该解释器通过解释这些句子来解决该问题。

    如何解决:构建语法树,定义终结符与非终结符。

    使用场景

    有一个简单的语法规则,比如一个sql语句,如果我们需要根据sql语句进行rm转换,就可以使用解释器模式来对语句进行解释。

    一些重复发生的问题,比如加减乘除四则运算,但是公式每次都不同,有时是a+b-cd,有时是ab+c-d等,公式千变万化,但是都是由加减乘除四个非终结符来连接的,这时我们就可以使用解释器模式。

    解释器模式在实际的系统开发中使用的很少,因为他会引起效率、性能以及维护等问题。

    相关文章

      网友评论

          本文标题:设计模式(十六):解释器模式

          本文链接:https://www.haomeiwen.com/subject/udnraqtx.html