說明:Bloaters是代碼,方法和類已經增加到很多行代碼,這時候它們已經很難使用了。
一般壞代碼不會立馬出現,而是隨便程序的改變日積月累出現的(尤其是沒有人嘗試著去修改它們)
函數長(long Method)
一個方法包含太多行代碼。一般來說,一個方法超過10行代碼你就得問問自己是不是有需要優化的地方。
類的代碼行數多(Large Class)
一個類包含很多字段/方法/代碼行
偏愛基本類型(Primitive Obsession)
- 使用基本類型而不是小Object(代碼量比較少)的簡單的任務(如貨幣、范圍,特殊字符串電話號碼,等等)
貨幣: 幣值和幣別 范圍:起始值 結束值 - 使用常量編碼信息(例如,常量USER_ADMIN ROLE = 1用于表示具有管理員權限的用戶。)
- 使用字符串常量作為字段名稱在數組中的數據使用。
參數多(Long Parameter List)
一個方法超過3個或者四個參數
數據團(Data Clumps)
有時候不同的代碼包含相同的變量組(例如連接數據庫的參數)。這些臃腫的代碼塊應該寫成一個類。