說明:Bloaters是代碼大咱,方法和類已經(jīng)增加到很多行代碼贸街,這時(shí)候它們已經(jīng)很難使用了战转。
一般壞代碼不會(huì)立馬出現(xiàn)枉证,而是隨便程序的改變?nèi)辗e月累出現(xiàn)的(尤其是沒有人嘗試著去修改它們)
函數(shù)長(long Method)
一個(gè)方法包含太多行代碼。一般來說,一個(gè)方法超過10行代碼你就得問問自己是不是有需要優(yōu)化的地方盒件。
類的代碼行數(shù)多(Large Class)
一個(gè)類包含很多字段/方法/代碼行
偏愛基本類型(Primitive Obsession)
- 使用基本類型而不是小Object(代碼量比較少)的簡單的任務(wù)(如貨幣蹬碧、范圍,特殊字符串電話號(hào)碼,等等)
貨幣: 幣值和幣別 范圍:起始值 結(jié)束值 - 使用常量編碼信息(例如,常量USER_ADMIN ROLE = 1用于表示具有管理員權(quán)限的用戶炒刁。)
- 使用字符串常量作為字段名稱在數(shù)組中的數(shù)據(jù)使用恩沽。
參數(shù)多(Long Parameter List)
一個(gè)方法超過3個(gè)或者四個(gè)參數(shù)
數(shù)據(jù)團(tuán)(Data Clumps)
有時(shí)候不同的代碼包含相同的變量組(例如連接數(shù)據(jù)庫的參數(shù))。這些臃腫的代碼塊應(yīng)該寫成一個(gè)類翔始。