2017-06-05 61 views
0

因此,對於乾淨的代碼「沒有超過方法的3/4參數」有一些規則。私有方法的參數最大數量

我很好奇我應該遵循這個私有方法的規則,這個方法被其他函數使用並且不被用戶調用。或者我可以將更多的3/4參數傳遞給私有方法?

回答

1

清潔和易於使用的類不僅是公共API必需的。
讓內部代碼難以閱讀和使用是不可接受的。

結果導致不平衡的質量設計:清潔的公共API設計,但實施質量較差。
儘管實現對於獲得一個好的軟件來說同樣重要。

或者我可以通過多個3/4參數到私有方法?

您應該提供一個自定義類作爲參數,它保存要作爲單獨參數傳遞的信息。

0

很明顯,你的代碼更容易被3或4個參數讀取,而不是7或8,儘管你可以考慮一些事情。

如果某些參數密切相關,您可以創建一個佔位符類。例如,而不是參數(int age, String firstName, String lastName),你可以使用參數(Person person)

另一種情況是參數都是相同類型的情況。在這種情況下,您可以使用varargs,類型簽名看起來像Type...varags documentation

雖然沒有硬性的「規則」,但要充分利用您的判斷力,並考慮代碼的可讀性和可維護性。