白话规则引擎实现模式

本文介绍了规则引擎的概念,包括单个规则结构、评分卡和决策表。规则引擎如Drools和URule在实现上有所不同,Drools规则通常不包含“否则”部分,而评分卡和决策表可以视为规则的特殊形式。文章讨论了如何将这些表现形式编译成标准规则体结构,并强调了条件算法(模式匹配算法)在规则计算性能中的关键作用。
摘要由CSDN通过智能技术生成

规则引擎介绍

规则引擎又称为决策引擎,具体实现有很多种形式,比如由单个规则构成的规则集、用于评分的评分卡、多维度条件计算的决策表等;无论形式上怎么变化,归纳下来无非就是“如果…那么…否则”三大部分。

在“如果”和“那么”之间,用于存放规则的条件;“那么”之后定义若干个动作,这些动作在条件满足后执行;“否则”的后面也是若干个动作,这些动作在“如果”和“那么”之间条件不满足的时候执行。

当然也不是所有规则引擎都有“如果…那么…否则”三大部分,比如Drools里只有“如果…那么”没有“否则”,这在使用的时候多少会带来一些麻烦,这点在使用的时候就会发现。

单个规则结构

前面提到,无论规则引擎产品提供了多少种规则工具,总结下来每种规则工具实现的逻辑都是“如果…那么…否则”三大部分,下图当中展示了URule这款规则引擎产品向导式规则集的结构,可以非常明显看到规则结构的三大部分。

在这里插入图片描述
在上图中的两个规则当中,因URule提供的规则条件部分是图形化方式展现,所以条件阅读起来就容易的多,“那么”和“否则”部分定义了一条条的动作,分别在条件满足和不满足的时候执行。

在Drools中,规则体部分就没有“否则”&

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值