delphi - Delphi 中的自动化逻辑

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

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

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

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

最佳答案

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

但是,我怀疑您遇到的问题是缺少正确的对象模型。有很多 IF 表明你有集中的逻辑,然后决策取决于很多因素,你们都必须检查这些因素,最终会变得一团糟。

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

我始终主张以模型为中心的解决方案。通过正确设计的对象模型,职责可以分布在模型中的类之间,从而消除热点。这对应于 Single responsibility principleDon't repeat yourself .

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

关于delphi - Delphi 中的自动化逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9154740/

相关文章:

delphi - 关于实用的用户身份验证系统的建议?

delphi - 透明面板

delphi - 我可能在 Delphi XE2 中破坏了什么?

delphi - 如何在Delphi中调用TObjectDictionary的继承构造函数

Delphi 2007,Indy 10 - 用于单向传输数据 block 的最简单的 TCP/IP 设置是什么

delphi - 如何使 Delphi XE2 在 4k 显示器上以 200% 文字大小显示良好?

multithreading - 主线程繁忙时在 Delphi 中显示启动屏幕

delphi - 当表单上的 DoubleBuffered 为 True 时,TImage 上的 TButton 存在图形错误

delphi - 无法在 Spring4D 中使用带有比较器的默认参数值

delphi - Delphi中如何获取调用批处理文件的路径?