gpt4 book ai didi

java - 过滤自定义数据结构的设计模式

转载 作者:行者123 更新时间:2023-12-02 09:39:34 24 4
gpt4 key购买 nike

我已获得以下数据结构,现在我需要应用规则来过滤给定的购物车。一个示例是过滤掉用户 bob 列出的所有使用信用卡付款方式的项目。该规则取决于具体情况。

下面的所有这些都是我的请求和响应中的复杂类型,具有具体的实现,没有实现接口(interface)。

什么是最好的设计模式来分离我的数据结构和应用于它的规则。装饰器模式有帮助吗?欢迎您提出建议。

   public class PaymentType {
private String paymentType;
}

public class Items {
private Integer itemId;
private String category;
private List<PaymentType> paymentOptions;
}

public class Group {
private Integer sellerId;
private List<Items> itemList;
}

public class Cart {
private Integer cardId;
private List<Group> group;
}

最佳答案

  1. 如果对于每种 PaymentType,您需要执行一些不同类型的操作,那么您可以尝试 STATE PATTERN 并委托(delegate)您的请求。

  2. DECORATOR PATTERN 用于在运行时添加额外的责任,所以我实际上没有找到那种场景,可能是我在某个地方遗漏了。

其他项目,组可以分割,并且有可能是装饰模式。

如果元素数量是固定的,则可以使用命令模式,并且撤消场景甚至有助于丢弃/接受购物车中的元素

关于java - 过滤自定义数据结构的设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9765886/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com