建模一个简单的规则引擎

时间:2016-02-17 20:26:39

标签: scala rule-engine

我正在尝试在Scala中为学校的课程和先决条件建模。

因此,为了能够选修课程,您必须满足以下条件:

  • courseA
  • CourseA和CourseB和..
  • courseA或CourseB或......
  • (courseA和courseB)或(courseC and courseD)

因此,简而言之,先决条件可以是课程,也可以是许多课程,您可以将简单的操作符AND和OR组合在一起。

所以基本的想法是我想用scala建模。

我如何在Scala中对此进行建模?我之前从未创建过这样的规则引擎,实际规则将存储在数据库中。

我需要一些帮助,概述如何设计课程并了解这是如何工作的,并考虑到绩效。

我的想法是我可以遍历所有学生,然后在规则引擎中加载数据后,我可以确定用户是否符合课程要求并可以注册。

1 个答案:

答案 0 :(得分:0)

https://en.wikipedia.org/wiki/Specification_pattern可能会激励你提出一个ISpecification特征......