我有一个应用程序,我想使用某种表达式解析器来定制它。
我希望能够在不重新编译代码的情况下更改应用程序的某些部分。
我考虑使用Groovy表达式。
例如,我有一个功能可以通过提供表达式来启用/禁用:
在这种情况下,此功能将被启用。
Example 1:
EXPRESSION : status = part-time || status = hourly
INPUT: status = part-time
在这种情况下,此功能将被禁用。
Example 2:
EXPRESSION : status = part-time || status = hourly
INPUT: status = permanent
用户需要输入一个表达式和一个输入。表达式应该求值为布尔表达式。
他们还可以更改表达式,程序将通过一些评估来捕获这个变化。 顺便说一下,这些表达式已经有文档说明,并且我向我的应用程序用户公开了它们。
Example 3:
EXPRESSION : salary > 10000
INPUT: salary = 7000
我之前见过一个程序可以做到这一点,他们说在幕后使用了Groovy。 但是我无法理解这个概念。
有人能给我一个想法吗?