筆記:重構—改善既有的程式設計

YH Yu
後端新手村
Published in
2 min readAug 3, 2019
Refactoring: Improving the Design of Existing Code (2nd Edition)

Any fool can write code that a computer can understand. Good programmers writes code that humans can understand.
- M. Fowler (1999)

我的閱讀順序是先從 1、2、4 章開始,這幾章是重構的原則和大方向。然後再去看第 3 章,從各種程式碼壞味道中,逐一檢視各種重構技巧。

(以下筆記陸續更新中…)

重構的原則(心法)

  1. Chapter 1 & 2:第一個範例 & 重構原則
  2. Chapter 4:打造測試

程式碼壞味道(技法)

24個壞味道和相對應的重構技法

Part 1:

  • 難以理解的命名
  • 重複的程式碼
  • 過長的函式

Part 2:

  • 過長的參數列
  • 全域的數據
  • 可變的數據

Part 3: …

動機

2018年的第二版跟第一版差了10幾年,內容也有大幅度的改動。重構真的是本非常有意思的書,隨著經驗的不同,每次看都會有不同的體悟。

回想自己在閱讀第一版的時候,重點都放在學習各種“技法”,也就是書中的程式碼範例上。迫不及待地想要依樣畫葫蘆,這裡修修,那裡改改,卻總是覺得不滿意。

3、5年過去,期間重構了不少自己和別人的程式碼,多少累積了一點經驗。現在看新版,反而覺得偏向經驗的“心法”相對更加重要,也就是書中的文字敘述部分。像是要用什麼角度評估一段程式碼(e.g. 效能 vs 可讀性)、不同情境下作者的思考脈絡等等。

我想為自己做一個“重點式”的心得筆記,希望幾年後的自己再回來看時,會有更多不一樣的想法。

如果這系列文章對你有所幫助的話,歡迎拍手讓我知道,最多可以拍50下喔👏👏

--

--

YH Yu
後端新手村

Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.