drools 7.x DSL领域特殊语言
1. 规则引擎面临的问题:
- 业务规则的实现大部分是由开发人员来实现的
- 业务规则需要业务分析人员能够阅读和理解
- 业务规则的可读性和用户的友好性都不太好
2. DSL领域特殊语言
DSL == Domain Specific Language
以贴近业务领域的方式,即以类自然语言的方式来构造软件,使得我们不用花费太多精力就能看懂代码所对应的业务含义 ,它是创建规则语言的一种方式,致力于解决我们的问题域 ,DSL相当于一个转换器,它能将某一领域内的术语转换成规则语言
3. DSl 好处
领域专家只需要业务,而不需要关注技术
规则模式可以被重复利用
使业务领域专家更平滑的将业务领域中的概念转换成DSL(存放于dslr文件中)
提高业务规则的可读性
4. DSl 实现
4.1 DSL包含两种类型的文件
dslr 文件:存放了一些业务领域专用语言
dsl文件:定义了领域专用语言到规则语言的映射,能将领域专用语言转换成规则语言
4.2 转换过程
dslr文件通过dsl转换之后的结果是一个符合语法的DRL文件(自然语言到规则语言的转换)<