语言:Java 业务场景为: 有 N 个 K:K1->K15 每个 K 均有相同的 4 个属性 A 、B 、C 、D 但是每个 K 的属性计算规则不一样: 例如:
if K = K1:
if K1.A = -1
K1.B = false
else 0 < K1.A < 15
K1.C = x
K1.B = true
K1.D = x
return K1
if K = K2:
if K2.A < 0.5
K2.B = false
如果要硬写的话,要写一堆 if-else, 想到使用规则引擎 easyrule,但是之前没用过,好像也不太适合,因为还需要返回值
也看了一些其他的策略模式这种,但是都不是那么好抽象
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.