我正在重构/审查Java应用程序
当我这样做时,我表明某些方法有
返回Object
,String
,Boolean
等值,但是
返回值不在任何地方使用。只做了调用方法。
所以,我只是在徘徊,因为它会导致它们 应用程序的性能问题。
我应该将它们改为无效还是保持原样?
答案 0 :(得分:4)
此外,与表演相比,不合适的方法构建。
如果方法的返回值在程序中使用了 no ,则没有理由返回它,因此方法的返回类型应该是void
。
答案 1 :(得分:2)
我认为保持返回类型不会有性能损失。
话虽如此,我认为你仍然应该删除它们。原因是它们本质上是死代码。这些方法中可能存在未知的错误,这些错误围绕着返回类型 - 未知因为它们未被使用。如果有人决定有一天使用它们,这是一个潜在的危险。
此外,如果你保留它们会增加维护负担:每当有人接触到其中一种方法时,她就必须(不必要地)考虑返回类型。
这基本上归结为YAGNI。
答案 2 :(得分:1)
在我看来,API使用不当或设计不正确。
如果API设计正确,那么为什么API用户不使用方法返回类型?在这种情况下,用户必定是错误的。
另一方面,如果API设计不正确,那么在当前状态下使用它有什么意义呢?如果返回的信息是多余的,那么修复API并使方法无效。
我认为与良好的API设计相比,性能考虑因素并不重要。以后可以始终提高性能,但是更改API非常困难且成本高昂。
答案 3 :(得分:1)
如果未使用该值,则不应返回值。请改用void
。有时我会看到一些未使用的 getters 但实际上它们被Web框架使用。很难确定该方法是否未使用。即使它被使用但返回值被忽略。不忽略返回值没有限制。