我正在开发一个使用设计模式的程序,并且我为我的工作选择了构建器模式。 我的老师告诉我我用错了,但我想得到许多不同人的意见
谁能帮我看看我这样使用Builder会不会有什么问题?如果是的话,您能具体解释一下为什么以及我应该如何解决它吗?
首先,你重复代码。例如,
SetName
在不同的构建器中不太可能有所不同。 SetBasePrice
似乎也一样。因此,您可以为您的饮料构建器创建一个抽象类,可能称为 DrinkBuilder
并实现所有完全相同的方法,并确保您从这个 DrinkBuilder
继承您的构建器。 DrinkBuilder
应该实现 IDrinkBuilder
,让您的自定义保持抽象,而您的实际构建器类将以不同的方式实现它。