消除你程式碼的臭味 Day 11- 函式的副作用:把計算與 I/O 分離 一個函式應該只做一件事,並且做好它。 如果你的函式既要處理計算,又要跟外部世界(螢幕...
消除你程式碼的臭味 Day 12- 拒絕複製貼上:抽出共用邏輯 重複不是省事,是技術債。 在第二個地方貼上相似度 90% 以上程式碼時,就創造了一個混亂區。...
消除你程式碼的臭味 Day 13- 魔術數字:用具備語義的常數取代 數字本身不會說話,名稱會。 在程式碼裡看到一個像 86400 或 0.05 這樣的數字,看...
消除你程式碼的臭味 Day 14- 複雜判斷:抽到具名函式裡 布林表達式越長,越應該被命名。程式碼是寫給人看的,只是順便能讓電腦執行而已。 當你寫下一長串充滿...
消除你程式碼的臭味 Day 15- 組合優於繼承:用小能力組出行為 物件導向的繼承理論,源自於生物學家林奈的分類法。界、門、綱、目、科、屬、種。Dog is-...
消除你程式碼的臭味 Day 16- 單一職責:找到唯一修改理由,告別脆弱程式碼 單一職責原則(Single Responsibility Principle,...
消除你程式碼的臭味 Day 17- 分離關注點:設定與主要邏輯分開 把變動頻繁的設定從穩定的主要邏輯裡拿出去。 你的核心商業邏輯,應該像一個在無菌室裡工作的科...
消除你程式碼的臭味 Day 18- 狀態管理:用資料定義流程 狀態機不該是 if/else 的迷宮,它的本質是一張規則流程表。 把轉移規則寫成表,讀表執行就...
消除你程式碼的臭味 Day 19- 參數:少即是多,避免傳布林參數 參數越多,理解成本越高。問個簡單的問題:當你看到一行程式碼 createUser('Bob...
消除你程式碼的臭味 Day 20- 依賴注入:鬆開那個耦合 你的類別還在自己 new 東西嗎?當一個類別手動自己建立它所依賴的物件時,它就像一個什麼都要自己來...