Feature Envy

徵兆與症狀

一個方法使用其他物件的資料,多於使用自己的資料。

出現原因

常見的原因在於,當某些欄位被抽去到 data class 後,行為卻沒有被抽取過去。這些行為應該要被搬到 data class 內才是。

處理方法

  • 把持續呼叫外部資料的功能,用 Move Function 搬移出去;或者先用 Extract Function 抽取出特定部分功能,接著再用 Move Function 搬出去。