Uber開源Piranha:一種自動刪除陳舊程式碼的工具

banq發表於2020-03-20

過時舊程式碼的一些缺點:
  • 不必要的程式碼混亂會增加整體複雜性,從而降低開發人員的工作效率
  • 這些標記可以代替其他實驗標記
  • 標記過時也會導致錯誤
  • 未使用的程式碼以及二進位制檔案都保留在原始碼中

為減輕此類缺陷,Uber的研究人員開發了一種工具,該工具能夠掃描原始碼,以刪除與過時或過時的特徵標記(稱為Piranha食人魚)相關的程式碼。據乘車巨頭稱,該工具正在為Android和iOS程式碼庫在不斷髮展的管道中執行,開發人員已使用它刪除了大約兩千個過時的功能標記及其相關程式碼。
目前,Piranha支援Objective-C,Swift和Java程式。PiranhaJava重構Java應用程式中過時的功能標誌相關程式碼,尤其是針對Android平臺的程式碼。PiranhaSwift是透過Swift語言使用SwiftSyntax實現的,用於重構Swift程式碼,並且PiranhaObjC用於清理Objective-C程式中的程式碼,並以C ++實現。

開發人員確定了執行程式碼清理的三個關鍵維度,分別是
  • 與功能標誌API緊鄰的程式碼
  • 由於執行上述步驟而無法訪問的程式碼。此步驟也稱為深層清潔。
  • 刪除與功能標誌有關的測試


 

相關文章