你有一些code you want to remove與一個ruby項目的一個過時的功能相關聯。如何確保你擺脫所有的代碼?如何從ruby中的程序中刪除功能?
一些通常有助於重構ruby的指導方針適用,但是還有額外的挑戰,因爲擁有不被任何東西調用的代碼不會破壞任何單元測試。
更新:是否有人編寫過任何可以根據您的版本控制歷史記錄進行猜測的任何內容,如果您有刪除大部分但不是全部代碼的提交,並且可以指出其餘代碼?
你有一些code you want to remove與一個ruby項目的一個過時的功能相關聯。如何確保你擺脫所有的代碼?如何從ruby中的程序中刪除功能?
一些通常有助於重構ruby的指導方針適用,但是還有額外的挑戰,因爲擁有不被任何東西調用的代碼不會破壞任何單元測試。
更新:是否有人編寫過任何可以根據您的版本控制歷史記錄進行猜測的任何內容,如果您有刪除大部分但不是全部代碼的提交,並且可以指出其餘代碼?
當前的想法:
git grep
。特別是在動態類型語言中,沒有簡單的方法來做到這一點。如果您有單位測試,請感謝編寫它們的開發人員,因爲這會幫助您正確刪除代碼。但你基本上是SOL。刪除代碼,如果它破壞了,放回去,找出破壞的位置,嘗試解決它,然後重複。
看看你的代碼覆蓋率。任何未被覆蓋的代碼都可能是您要刪除的代碼的一部分(如果有的話)。 (只要確保你已刪除了測試=])
+1,雖然它有點無聊,因爲幾乎任何有關Ruby(或任何語言)的軟件工程問題的答案似乎都是:「有高質量的測試」。 :-) – 2010-05-05 04:51:36