小编Bob*_*Bob的帖子

什么是复杂决策系统的正确设计模式

我正在设计一个调用复杂逻辑的决策系统,我可能需要使用很多嵌套的if/else语句,

我想看看是否有更好的设计模式,可以帮助我简化系统的结构,并为将来的改进提供一定的可扩展性.

项目的问题可以简化为:

我们现在需要为一个请求做出决定,该请求有三种类型的属性,可能还有更多.它们是PricePolicy(合约/整体销售/零售/折扣),RequestType(买/卖)和ProductType(时装/家居/玩具).

每个决策都基于请求的所有3个属性,因为价格策略的类型可能在将来发生变化,并且更多属性将被添加到决策制定过程中.

所以我试图避免制作一个大的switch语句,这对于将来的扩展来说是丑陋和困难的.如:

switch(ProductType) {
 case Fashion:
   switch(PricePolicy) {
     case Contract:
       if(Request == Buy) {
         // making a decision.
       } else {
       }
     }
   }
}
Run Code Online (Sandbox Code Playgroud)

请分享你的想法和建议谢谢.

干杯,鲍勃

java architecture design-patterns

4
推荐指数
1
解决办法
1809
查看次数

标签 统计

architecture ×1

design-patterns ×1

java ×1