Recca Chao 的 gitHub page

推廣網站開發,包含 Laravel 和 Kotlin 後端撰寫、自動化測試、讀書心得等。Taiwan Kotlin User Group 管理員。

View on GitHub

基礎問題

重構這本書裡面,提到很多不同的壞味道。常常因為壞味道的狀況實在太多了,讓想改善程式碼的人不知道從哪邊先入手。

這份筆記裡面我整理了五個我認為最常見的問題,並且針對這五點節錄出重構裡面所提到的改善方法。

重複的程式碼

這個算是很基礎的問題,不過還是很容易發生。 基本上就是網頁想要新增某個功能,但是因為各種原因,沒有仔細看過之前的元件,所以又重新做了一個。於是這段程式碼就

重複的程式碼會讓修改變得很困難。每次要修改的時候就得四處找不同的地方。

解決方案

書裡提到對應的解決方案有:

過長函式

另一個很容易發現的問題,就是很大的函式。因為在撰寫的時候,通常會把功能的實作都寫在一起。隨著開發時間,越寫函式就越來越長。

解決方案

書裡提到對應的解決方案有:

過大類別

另一個常常發生的事情,就是類別太大。

在網頁開發上面,如果有使用 MVC 框架的話,這種狀況比較容易出現在 Controller 身上。因為每次需要功能的時候,直覺會想要在既有的 Controller 裡面加入新的函式,並在裡面實作邏輯。久而久之,類別自然就會越來越大。

解決方案

書裡提到對應的解決方案有:

過長參數列

解決方案

書裡提到對應的解決方案有:

註解太多(Comment)

一般來說,開發遇到的問題其實都是註解太少。不過隨著重構的過程,各種說明性註解也就會越來越多。

註解雖然並不是壞味道,甚至很多時候可以說是一種香味,不過當註解多到一定程度時,就會開始變成問題。

所以雖然這個壞味道被放在書裡的最後一種,但是我將這個壞味道放在「基礎問題」裡面。

解決方案