java – 在一个工厂的构造函数中有太多的参数代码气味?

前端之家收集整理的这篇文章主要介绍了java – 在一个工厂的构造函数中有太多的参数代码气味?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个工厂类,目前在它的构造函数中有6个参数,我只需要添加另一个.

通常,这会对我尖叫“嘿,你的班级有太多的依赖,所以这太多了!”

但是,由于这个班级是严格的一个工厂,真的是这样吗?我应该关心越来越多的依赖关系?如果是这样,我应该考虑哪些策略重构?

更新:
我考虑过建筑师模式,但是对于一家工厂来说,这不是什么过分的?

(即,WidgetFactoryBuilder,它构建一个构建窗口小部件的工厂).

此外,我不明白构建器如何真正缓解我的依赖关系 – 它只是将它们从构造函数移动到方法 – 这似乎更混淆了事情 – 但是这可能是由于对如何应用构建器模式在这个情况下.

解决方法

首先我应该提到,我不一定认为六个参数太多了.但如果你坚持…

我不认为这个问题在于构造函数的参数数量.

其他建议的构建器模式对于包含大量状态的类是有用的.工厂很少出现这种情况.我反而认为你正在谈论的参数是依赖于其他类.真正的问题是你的工厂有太多的依赖关系 – 而不是它的构造函数需要太多的参数.

相反,你需要看设计.为什么工厂有这么多依赖?有可能减少这个数字吗?也许工厂创造的对象太复杂了?

猜你在找的Java相关文章