二、有意義的命名

1.名副其實

比較如下兩段代碼(忽略變量未定義問題)

這就是選用好名稱的力量

2.做有意義的區分

誰能說出下面這三個方法的區別?

getActiveAccount(); ??getActiveAccounts(); ? getActiveAccountInfo();

3.避免使用編碼

(1)比較如下兩段代碼

代碼讀得越多,眼中就越沒有前綴。最終前綴就變作了不入法眼的廢料。

(2)接口和實現

創建一個抽象工廠,該工廠是個接口,要用具體類來實現。如何來命名呢?IshapeFactory和ShapeFactory嗎?但我不想讓用戶知道我給他們的是接口,我就想讓他們知道那是個Factory,完全可以讓接口命名為ShapeFactory,實現命名為ShapeFactoryImp。

4.類名和方法名

類名應該是名詞或名詞短語,方法名應該是動詞或動詞短語。JavaBean要有get,set,is前綴。重載構造方法時,使用描述了參數的靜態工廠方法名。例如,

Complex point = Complex.FromRealNumber(23.0);

通常好于

Complex point = new Complex(23.0);

5.每個概念對應一個詞

例如,使用fetch,retrieve,get來給多個類的同種方法命名,你怎么記得住哪個類中是用哪個方法呢?同樣,在同一堆代碼中既有controller,又有manager,還有driver,這就會讓人困惑。

6.添加有意義的語境

比較如下兩段代碼


最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 名副其實: 變量、函數或類的名稱就能夠說明為什么它存在,做什么事,怎么用,如果需要注釋來補充,就不算名副其實: 避...
    樹下老男孩閱讀 867評論 0 3
  • 名副其實 變量名應該告訴你:他為什么會存在,他做什么事,他應該怎么用 如果名稱需要注釋來補充,那就不算名副其實 p...
    denuth閱讀 253評論 3 0
  • 思考一下從華德?薩姆基(Walter Semkiw)所著《轉世的革命家(Return of the Revolut...
    卡樂be閱讀 279評論 0 0
  • 了解Hexo Hexo DocsHexo命令大全 了解markdown語法 makedown語法簡明版 maked...
    fellyvette閱讀 644評論 0 4