1. 程式人生 > >iOS/Android瘦身-基於PMD的重複程式碼檢測

iOS/Android瘦身-基於PMD的重複程式碼檢測

App功能越來越多,包體積也越來越大,反而容易導致使用者流失。所以定期進行程式碼瘦身是很有必要的。重複程式碼是一大累贅,一方面增加了包大小,另一方面也增加了維護成本。今天就來學習下,如何通過PMD檢測重複程式碼,為下一步的程式碼瘦身打好基礎。

PMD簡介

PMD 是一種開源、簡單易用的、通過靜態分析獲知程式碼錯誤的工具,可以在不執行程式的情況下報告錯誤。

PMD 附帶了許多可以直接使用的檢查規則,可以找出源程式的許多問題,而且規則可以自由定製。

今天只使用它的一項功能:重複程式碼檢測。

PMD 配置

下載完成後,解壓並放置到指定目錄下,目錄結構如下:

PMD 使用

cd 進到 bin 資料夾,一行程式碼搞定:

./run.sh cpd --language ObjectiveC --minimum-tokens 100 --files /Users/liqiyu/Work/code/DeliciousFood/Classes > ~/Desktop/codeCheck.txt 
引數 說明
cpd
重複程式碼掃描的批處理指令碼
--language ObjectiveC
指定語言為OC
--minimum-tokens 100
指定被判定為重複程式碼的最少匹配的token數,數值100 ~ 150比較合適,越小則篩選強度越寬鬆
--files /Users/liqiyu/Work/code/DeliciousFood/Classes
指定搜尋檔案目錄
> ~/Desktop/codeCheck.txt
將資料匯出到 txt 檔案


其他

1、不喜歡命令列,還可以撥出 Gui 介面編輯

./run.sh cpdgui


2、詳細的引數列表

3、參考文件