我是否正确使用了Builder?

问题描述 投票:0回答:1

我正在开发一个使用设计模式的程序,并且我为我的工作选择了构建器模式。 我的老师告诉我我用错了,但我想得到许多不同人的意见

这是我的类图

谁能帮我看看我这样使用Builder会不会有什么问题?如果是的话,您能具体解释一下为什么以及我应该如何解决它吗?

c# design-patterns console-application builder class-diagram
1个回答
0
投票

首先,你重复代码。例如,

SetName
在不同的构建器中不太可能有所不同。
SetBasePrice
似乎也一样。因此,您可以为您的饮料构建器创建一个抽象类,可能称为
DrinkBuilder
并实现所有完全相同的方法,并确保您从这个
DrinkBuilder
继承您的构建器。
DrinkBuilder
应该实现
IDrinkBuilder
,让您的自定义保持抽象,而您的实际构建器类将以不同的方式实现它。

构建器模式参考:https://refactoring.guru/design-patterns/builder

© www.soinside.com 2019 - 2024. All rights reserved.