私有方法的最大参数数量

时间:2017-06-05 10:22:49

标签: java coding-style

所以干净的代码有一种规则“不超过方法的3/4参数”。

我很好奇我应该遵循这个规则的私人方法,被其他功能使用而不被用户调用的方法。或者我可以将超过3/4的参数传递给私有方法?

2 个答案:

答案 0 :(得分:1)

对于公共API,不仅需要干净且易于使用的类 内部代码难以阅读和使用是不可接受的。

这导致了不平衡的质量设计:干净的公共API设计,但实施质量较差 虽然实施对于获得一个好的软件同样重要。

  

或者我可以将超过3/4的参数传递给私有方法?

您应该提供一个自定义类作为参数,以保存您想要作为单个参数传递的信息。

答案 1 :(得分:0)

显然,你的代码在3或4个参数中更具可读性,而不是7或8,尽管你可以考虑一些事情。

如果某些参数密切相关,您可以创建一个占位符类。例如,您可以使用参数(int age, String firstName, String lastName)而不是参数(Person person)

另一种情况是参数都是相同的类型。在这种情况下,您可以使用varargs,类型签名将显示为Type...varags documentation

虽然没有硬性和快速的“规则”,但请使用您的最佳判断并考虑代码的可读性和可维护性。