我正在重構一個龐大的代碼庫的討厭問題,並且需要找到特定的方法,接受相當一般的接口的實例,該界面。當用特定的子類型調用時查找特定方法的用法
例如,在NastyStatic
中是DoBadThings(IBusinessObject)
方法。在我的商業圖書館中,我有大約50個課程實施IBusinessObject
,其中包括DontHurtMe : IBusinessObject
。
我怎樣才能找到每個電話NastyStatic.DoBadThings(foo)
,但只有foo
是DontHurtMe
的實例?
編輯:我在某種靜態分析工具之後。在DoBadThings
(或類似的)中設置動態手錶並運行應用程序並不是一個真正的選擇。由於我對DontHurtMe
所做的更改,它已經會拋出異常,並且有太多的代碼路徑可以用這種方式查找所有用法(至少在它啓動並且我的用戶開始抱怨之前)。
如果anwser不包括向DoBadThings方法添加某種跟蹤並運行應用程序,我會感到驚訝(並且非常感興趣) – 2011-02-17 07:42:44
@xorcrud這正是我想要避免的;-)還有,很多代碼路徑,並且在那種情況下它已經拋出異常 – 2011-02-17 07:45:11
無論如何,它會如何幫助您重構它? – Dyppl 2011-02-17 07:55:56