小阿阳啊 2021-07-20 16:43 采纳率: 100%
浏览 35
已结题

想用策略模式设计代码,如何拆分此逻辑?

现有一个仓库管理系统
要做一个根据复选框勾选的项来实现不同的业务逻辑,初步打算用策略模式来做,但是不知道如何拆分逻辑
逻辑如下

一、如果只勾选【库存】:
1.①库存数量满足投产数量时 Ⅰ.物料品质满足条件时 进行具体计算逻辑(品质满足,就按照库存数量计算出投产数)
2.①库存数量满足投产数量时 Ⅱ.物料品质不满足条件时 进行具体计算逻辑(品质不满足时,就按照品质区间值计算出需要再采购的数量)
3.②库存数量不满足投产数量时 Ⅰ.物料品质满足条件时 进行具体计算逻辑
4.②库存数量不满足投产数量时 Ⅱ.物料品质不满足条件时 进行具体计算逻辑

二、如果勾选【库存】和【收货】:
1.①总数量满足投产数量时 Ⅰ.物料品质满足条件时 进行具体计算逻辑
2.①总数量满足投产数量时 Ⅱ.物料品质不满足条件时 进行具体计算逻辑
3.②总数量不满足投产数量时 Ⅰ.物料品质满足条件时 进行具体计算逻辑
4.②总数量不满足投产数量时 Ⅱ.物料品质不满足条件时 进行具体计算逻辑
求一种用策略模式实现的方案,要求复用性和拓展性高的

  • 写回答

1条回答 默认 最新

  • hxycsdn9159 2021-07-20 17:23
    关注

    如果你自己都没有厘清逻辑为什么要强行套用设计模式呢?设计模式是帮助你更好的写代码的,而不是为了套用设计模式刻意的去修改自己的代码,不要被设计模式荼毒。如果你厘清了自己的逻辑设计模式这种东西你自然而然地就会用到了。强行套用只会让你的代码效率变低,代码量变大,其他没有任何好处。设计模式是没办法更好的解决问题的时候才去使用的。实际上他是一种为了灵活性间接解决问题的方法,在没有必要使用的场景下使用没有任何好处。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月21日
  • 已采纳回答 7月21日
  • 创建了问题 7月20日

悬赏问题

  • ¥15 手机连接电脑热点显示无ip分配
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大