《代碼精進之路:從碼農到工匠》讀書筆記

目錄

背景

第一部分 技藝

第1章 命名

命名的作用

命名規則

第2章 規範

第3章 函數

第4章 設計原則

第5章 設計模式

第6章 模型

第7章 DDD的精髓

第二部分 思想

第一部分 實踐

 


背景

實際開發一年了,自評開發習慣不好,沒有形成很好的自己的代碼風格,也很難寫出優雅的代碼。開始向別人學習,在此記錄讀書筆記。《代碼精進之路:從碼農到工匠》

第一部分 技藝

第1章 命名

命名的作用

提高代碼可讀性:使代碼概念清晰,增強代碼表達力。爲什麼代碼可讀性這麼重要呢,書中有一句話,看了很感慨:。所以,代碼即文檔,可讀性好的代碼有一定的自明性。不借助註釋和文檔,代碼本身就能顯性化地表達開發者的意圖。

命名規則

1. 常規命名

  • 變量
能夠正確描述業務,有表達力的名詞。
不需要用註釋來補充說明。
避免魔術數,使用統一變量表達,提高代碼的可搜索性。
  • 函數
命名要具體,空泛的命名沒有意義。
要體現做什麼,而不是如何做。
  • 類名
類是一組數據和操作的封裝。可以將應用中的類分爲兩大類:實體類和輔助類。
實體類承載核心的業務數據和業務邏輯,命名要充分體現業務語義,並在團隊內形成共識;
輔助類是輔助實體類一起完成業務邏輯的,命名可以通過後綴來體現功能。儘量不要使用Helper、Util做後綴,含義太過籠統,容易破壞單一職責原則。
  • 包名
package代表一組有關係類的集合,起到分類組合和命名空間的作用。
包名應該能夠反映一組類在更高抽象層次上的聯繫,命名要適中,不能太抽象,也不能太具體。
  • 模塊名
名稱要反映模塊在系統中的職責,代表着架構層次。

2. 命名要保持一致性:可以提高代碼可讀性,從而簡化複雜度。命名規則一旦選中,就要持續遵循,保證名稱始終一致。

3. 每個概念一個詞:每個概念對應一個詞,並且一以貫之。

4. 使用對仗詞:有助於保持一致性,且易於理解。

5. 後置限定詞:把限定詞加到名字最後。

常見限定詞:Total、Max、Min、Average等。

6. 統一業務語言:減少溝通成本。同一業務概念,不要用多個詞彙描述,造成不必要的溝通成本。

7. 統一技術語言:使用通用的技術語言。例DAO、DTO、DO等等。

8. 自明的代碼:好的代碼是最好的文檔。好的代碼是指具備很好的可讀性和自明性。

9. 中間變量:通過有意義的中間變量,從而把隱藏的計算過程以顯性化的方式表達出來。

10. 設計模式語言:技術人員之間,提高溝通效率。

11. 註釋

註釋的作用是闡述代碼背後的意圖,而不是複述代碼功能,複述功能意味着壞味道。

建議用顯性化的方法名來表達意圖,以減少不必要的註釋。


第2章 規範

 

第3章 函數


第4章 設計原則


第5章 設計模式


第6章 模型


第7章 DDD的精髓

 

第二部分 思想

第一部分 實踐

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章