首页 > 试题广场 >

购物车设计:顾客在超市中将选择的商品,如苹果、图书等放在购物

[单选题]
购物车设计:顾客在超市中将选择的商品,如苹果、图书等放在购物车中,然后到收银员处付款。在购物过程中,顾客需要对这些商品进行访问,以便确认这些商品的质量,之后收银员计算价格时也需要访问购物车内顾客所选择的商品。购物车设计可以使用()来设计该购物过程。
  • 工厂方法模式
  • 访问者模式
  • 模板方法模式
  • 责任链
Yad头像 Yad
访问者模式使得用户可以在不修改现有系统的情况下扩展系统的功能,为这些不同类型的元素增加新的操作。
顾客与收银员均为访问者,购物车里面的商品就是被访问元素。顾客对商品的操作就是确认商品质量,收银员对商品的操作就是计算商品总价格。还可以增加其他的操作来访问这些商品,进行新的操作。
发表于 2022-03-05 12:31:12 回复(0)
题干都提到访问了,一猜就知道是访问者模式。
发表于 2023-11-29 10:32:23 回复(0)
在访问者模式(Visitor Pattern)中,我们使用了一个访问者类,它改变了元素类的执行算法。通过这种方式,元素的执行算法可以随着访问者改变而改变。这种类型的设计模式属于行为型模式。根据模式,元素对象已接受访问者对象,这样访问者对象就可以处理元素对象上的操作。
发表于 2021-10-18 15:55:58 回复(0)
访问者模式是数据与数据算法分开的方式,顾客和收银员可以代表两种算法对同一数据类型的处理。
发表于 2024-08-25 16:06:45 回复(0)
访问者模式是数据结构和数据处理分开。
传统是定义一个数据结构类,并将对数据元素的操作写到这个类中。本题中两个访问者对商品这个数据都有不同的处理(方法),如果用传统方法将会变得很臃肿难以维护。
使用访问者模式:单独定义一个访问者类,去完成对数据的处理。


发表于 2024-08-07 11:20:43 回复(0)