![]() |
1
1
我可能会使用一个类来存储规则数据,但是用于存储它们的数据结构实际上取决于规则的组织方式。你说是这样,但通常是地图 行动 为了名誉。从您的示例中,听起来好像您正在映射 素质 对名誉的影响。在这种情况下,使用相同类型的系统可能不合适。例如,你真的想要一个消极的得分行为的可能性吗——允许这样做,但也许你不希望这样做。毕竟,听起来你的目标是卖东西——你可能想考虑给一个人买东西的负面声誉带来的影响。 话虽如此,这里有一些事情我会考虑。如果结构是平面的,并且在任何给定时间只能应用一个规则,或者每个规则都是独立的,那么由规则标识符(可能是枚举)键控的字典可能是合适的。如果可以应用多个规则并且它们相互作用,那么您可能希望将它们存储在集合中,并使用来自所有匹配规则的decorator模式构建复合规则。例如,使用已验证的帐户进行购买并撰写评论可能会比使用匿名帐户撰写评论给您带来更多的声誉。如果规则是分层的,也就是说,有一些优先权,那么一个过滤器链(具有中止链的选项)可能更合适。 |
![]() |
2
1
你可能想看看 production systems . 这些允许您通过执行定义的操作来处理规则和对操作作出反应。 |
![]() |
A B · C#Excel自动调整列避免长文本时出错 6 月前 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 6 月前 |
![]() |
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 6 月前 |
|
Sei · Avalonia/WPF将路由器传递到控制模板 6 月前 |