规则引擎|青训营笔记

61 阅读1分钟

  这是我参与「第五届青训营」笔记创作活动的第六天,确实没有听懂具体的代码实现,记录了一下能明白的相关概念。

规则引擎

定义

规则引擎是一种嵌入式组件,可以利用预定义的语义模块编写决策,并根据业务规则做出业务决策。

词法分析

将源字符串转换为词法单元(token)
此处利用有限自动机的原理进行识别词法单元。

image.png

语法分析

 在词法分析获得token单元后,对表达式的实际含义进行分析,一般利用语法树来进行。
 

image.png

image.png

    分析步骤

image.png

类型检查

  • 编译时检查:在构建语法树过程中进行类型检查
  • 执行时:可以执行时的参数输入的值类型

设计步骤

  • 词法分析并设计状态机
    • image.png
  • 语法分析
    • image.png
  • 执行
    • 对语法树安装后续遍历的方式执行。

标题:「【实践课】规则引擎设计与实现」第五届字节跳动青训营 - 后端专场

网址:live.juejin.cn/4354/ycRule…