在编写公司代码准则的过程中,我发现自己建议使用来自Effective Java 的Builder模式,而不是伸缩式构造函数。
但是,经过更多考虑之后,肯定是一个更优雅的解决方案是只删除构建器类,并且还要删除带有可选参数的多余构造函数。
因此,只有一个带有必需参数的构造函数,正常的getter / setter和注释代码。实现时,只需创建yr对象的新实例,然后设置值即可。
我最初的想法是,好处是消除了关于哪些参数是可选的以及需要哪些参数的困惑;但是,真正的好处来自使用方法链接/流利接口。
当您创建许多新实例时,构建器模式会很有用,因为ide可以完成繁琐的工作,并且还有很多(15+)个可选参数。但是,值得花额外的时间编码静态内部类吗,您是否建议使用构建器,还是浪费时间?