解释器模式(大数据项目实例分析):

    大数据统计项目遇到的问题

    大数据统计项目遇到的问题:
    按照计算模型对现有数据统计、分析、预测
    一般的计算模型是一个或多个运算公式,通常是加减乘除四则运算
    计算模型需要运行期编辑

    设计方案要有高扩展性

计算模型按正常算术方式书写,解释器处理语法逻辑
计算模型里有两类符号:数据和计算符

用逆波兰算法分析算式语法

    计算模型按正常算术方式书写,解释器处理语法逻辑

    计算模型里有两类符号:数据和计算符

    用逆波兰算法分析算式语法

用解释器模式处理数据

解释器模式:定义一个语法, 定义一个解释器,该解释器处理该语法句子

将某些复杂问题,表达为某种语法规则,然后构建解释器来解释处理这类句子


关系类图:

设计模式:解释器模式(学习笔记)

设计模式:解释器模式(学习笔记)


优点:
  容易修改,修改语法规则只要修改相应非终结符即可
  扩展方便,扩展语法,只要增加非终结符类即可
缺点:
  对于复杂语法的表示会产生复杂的类层次结构,不便管理和维护

  解释器采用递归方式,效率会受影响

适用场合:
  当你有一个简单语法,而且效率不是问题的时候
  一些数据分析工具、报表设计工具、科学计算工具等

注意事项:
  尽量不要在重要的模块中使用解释器模式
  解释器模式在实际的系统开发中使用的非常少
  可以考虑一下Expression4J、MESP、Jep等开源的解析工具包

相关文章: