Delphi自动化逻辑

时间:2012-02-06 01:36:12

标签: delphi delphi-2007 delphi-xe2 business-rules

我需要在Delphi应用程序中自动化一些非常复杂的业务规则(保险)。到目前为止,我们已经使用脚本引擎在外部维护这些规则(很多if / then / else类型语句),但这很难维护,也无法测试,很难用最终用户验证这些。

我看过的大多数正式规则引擎都没有与Delphi很好地集成(目前正在使用D2007,但计划今年转向64位XE2)。

是否有人知道任何产品或使用过任何可以使用的产品或技术?

3 个答案:

答案 0 :(得分:2)

脚本确实是处理可能会发生变化的部分业务逻辑的好方法。

但是,我怀疑你遇到的问题是你没有适当的对象模型。拥有许多IF表明你拥有集中逻辑,然后决策取决于你必须检查并最终导致混乱的许多因素。

这是直接使用数据而不是使用对象的症状。直接操作数据时,您必须知道所有适用的规则。

我一直倡导以模型为中心的解决方案。通过适当设计的对象模型,责任在模型中的类之间传播,从而消除热点。这与Single responsibility principleDon't repeat yourself

相对应

当然,挑战是对问题域进行建模,但这是我建议探索的路径。

答案 1 :(得分:1)

通过Object Connections查看常识。但我没有经验。

答案 2 :(得分:0)

查看RemObjects SDK(DataAbstract,如果您还需要直接数据库访问)。它们允许服务器端和客户端scripting

我们已经使用Databastract取得了巨大的成功。