У меня есть система, в которой «динамическая логика» реализована как правила Drools с использованием механизма правил.
Для каждой клиентской реализации реализуется пользовательская логика расчета цен и налогов с использованием файлов drl для этой конкретной реализации.
rule 'abc'
when
name = 'X'
then
price= '12'
end
И условие одного правила зависит от того, что установлено в предыдущих правилах, так что в основном правила переходят.
Это действительно болезненно, так как правила drools не являются последовательным программированием и не являются дружественными для разработчиков. Там появляется много ошибок из-за неправильной интерпретации того, как оцениваются слюни.
Есть ли лучшая альтернатива «java/groovy», которая могла бы легко заменить ее?