謹慎設計方法簽名(40)

本條目是若干API 設計技巧的總結:java

一、謹慎選擇方法的名稱設計模式

  • 始終遵循標準的命名習慣
  • 易於理解,與同包的其餘名稱保持一致風格
  • 選擇大衆承認名稱相一致的名稱,參見 java 類庫 api

二、不要過於追求提供便利的方法api

  • 每一個方法盡其所能,方法太多增長學習、使用、文檔化、測試和維護的難度
  • 只有一項操做被常常使用時,才考慮提供便捷方式;不然,不提供爲好

三、避免過長參數列表學習

  • 目標是四個參數,或者更少
  • 相同類型長參數危害格外大,使用者順序搞錯後,仍能編譯經過(運行時暴漏錯誤,不易排查)

四、有三種方法能夠縮短參數列表測試

(1)把方法分解成多個方法,每一個方法參數僅僅是參數列表子集ui

  • 一不當心,會致使方法數量過多
  • 多提煉公共子方法

(2)建立輔助類用來保存參數分組設計

  • 輔助類通常是靜態成員類
  • 對於頻繁出現的參數序列,能夠被看作是做爲某個獨特實體,建議使用輔助類

(3)結合前兩種,使用Builder(建造者)模式接口

  • 詳情參看建造者設計模式

五、對於參數類型優先使用接口,而不是類文檔

  • 好比應該使用Map 作參數而不是 HashMap等實現類
  • 方便之後擴展

六、對於Boolean 參數,優先使用兩個參數的 枚舉類型編譯

  • 代碼更加易於閱讀和編寫
相關文章
相關標籤/搜索