【发布时间】:2012-05-22 14:13:11
【问题描述】:
我需要构建一个应用程序 (Ruby),允许用户选择一个或多个模式,以防这些模式匹配以继续并完成一组操作。 在进行研究时,我发现了(对我而言)基于规则的系统的新领域,并花了一些时间阅读它,它似乎正是我需要的那种功能。
该应用将与不同的网络服务集成,并允许以下规则:
添加 Highrise 联系人并创建 Zendesk 票证后,请添加电子邮件到数据库
我有两个想法来构建它。第一个是构建某种 os DSL,以便能够指定规则条件并根据用户输入动态构建它们。
第二个是构建一些规则类,每个规则类都有一个模式/匹配器和操作方法。该模式将评估表达式并返回真或假,如果匹配为正则将执行操作。
这些规则需要被持久化,然后定期评估。
任何人都可以阐明这个设计或指出我可以获得更多信息的地方吗?
谢谢
【问题讨论】:
标签: ruby dsl rules business-rules rule-engine