我在几个小时内参加了一次考试,并且正在尝试为它解决示例问题。我无法找到解决以下问题的解决方案。策略模式的UML类图
绘制对应于以下情况的类图:
甲杂货店(例如一个超市)出售的项目。有两种类型的食物:食用 (即任何可以用作食物的食物)和不可食用的食物。有些产品按重量销售, ,有些产品按单位销售。有些项目是应税的,有些则不是。有些项目 以小组形式出售时有特价(例如,2美元为3美元)。购买可能包含许多 项目。
在类图中,只显示类/抽象类/接口,关联 和多重性的关联。不包括任何操作!在设计中清楚地指出接口和抽象类(如果有的话) 。
此外,您的设计应尽可能为 flexible。特别是,你需要 要注意以下几点:
1)项或者是食用与否,这一事实的 项目的生命周期内不会改变,而定价策略可以在有效期内发生变化的项目。
2)每个定价策略与一组特定的操作相关联。例如, 的税收策略,一个项目是否是纳税,我们可能有一个计算税收的操作 虽然集(该功能可用于非应税项目则返回0)
3)定价策略的操作保持不变,这些操作的处理方式可能随时间而改变。例如,我们计算可食用和非可食用物品税的方法可能会随时间而有所不同。
4)虽然定价策略的操作集在不同的 项目中保持不变,但我们可能希望以不同的方式针对不同的 项目实施这些操作。例如,我们可能想要为橙子和苹果计算税额。
我想是这样的想法,它可能适合于战略设计模式,但我不知道的。
有这个问题还是相关的,你也可以关闭的问题?我认为很多观看这个问题的人质疑你需要得到答案吗?向你提出这个问题并不意味着我会回答这个问题。我的主要动机是另一个好奇心:你的考试怎么样? – 2013-05-27 22:07:18
这不是那么糟糕,我得到了80/100。对于这个问题,实际上我仍然不知道确切的答案。 – 2013-05-27 22:12:13
祝贺你的考试!如果你仍然想要一个答案,那么你可能会改变这个问题。这可能有帮助。 – 2013-05-27 22:45:57