2011-08-02 146 views
3

我正在管理一個在php項目上工作的三個實習生組。他們似乎不擅長重構,並且在多個地方使用重複代碼。我正在尋找一個工具,我可以用它來找到這個重複的代碼,以便我可以顯示它們。查找並刪除重複的代碼

這會讓我的工作更輕鬆,而且項目更優雅,更不易出錯。任何線索?

+0

我認爲這是一個好主意,教你的實習生代碼重用和東西像面向對象的編程和設計。 – Nishant

+0

如果您選擇瞭解您正在編碼的語言的克隆檢測器,則可以獲得更好的重複檢測。您使用的是哪種語言? –

回答

2

有一個叫做PMD找到重複代碼非常好的工具。這裏是一個link to the site

+1

老歌,goldies。希望找到跨項目代碼複製,將所有相關代碼複製到臨時文件中。 dir。,下載PMD並運行./bin/run.sh cpd - 最小令牌100 - 文件/ tmp/tmpsrc。奇蹟般有效! –

0

見我們CloneDR工具。它在大型軟件系統中發現重複的代碼,使用編譯器精確的分析來查找由語言語法(AST匹配)指導的匹配,忽略空白和換行符的更改。它會找到確切的重複項和重複項。對於近似重複的情況,它報告了近似誤差作爲參數的差異;它幾乎告訴你如何爲克隆編碼替換子程序。 CloneDR運行於各種語言:C,C++,C#,COBOL,EGL,Java,JavaScript,PHP,Python等等。 每個檢測報告的示例可以在鏈接中找到。