對於像Java或C這樣的編譯語言,編譯是測試代碼的最前沿。它處理拼寫錯誤並強制執行界面。它還有其他整潔的提示,比如Java的@Deprecated
和@Override
等等。模擬編譯時檢查腳本語言(PHP和JS)
有沒有一種工具可以類似於PHP或JavaScript等解釋語言的方式檢查代碼?
我很清楚JS沒有接口,但是很多元信息可以通過Javadoc風格的註釋提供給工具。
對於像Java或C這樣的編譯語言,編譯是測試代碼的最前沿。它處理拼寫錯誤並強制執行界面。它還有其他整潔的提示,比如Java的@Deprecated
和@Override
等等。模擬編譯時檢查腳本語言(PHP和JS)
有沒有一種工具可以類似於PHP或JavaScript等解釋語言的方式檢查代碼?
我很清楚JS沒有接口,但是很多元信息可以通過Javadoc風格的註釋提供給工具。
對於一些您需要的用例如語法檢查,命名錯誤等,可以通過static code analysis tools來完成,這也可以強制執行編碼約定(行長度,命名約定,使用不推薦使用的函數等)。對於JavaScript,有JSLint(也可以查看jslint4java,它可以從命令行或IDE中使用)。大多數腳本語言都有類似的工具。我對PHP的這些工具並不熟悉,但是您可能會在this related question中發現一些好東西。另外,當您使用單元測試來確保代碼的質量時,代碼將一直執行,並且語法錯誤等將會很快被識別出來。儘管像jslint這樣的工具可以在不需要編寫測試代碼的情況下找到一些相同的問題,但單元測試會發現更多。單元測試和一個或多個代碼檢查器的組合應始終使用恕我直言。
所以你在考慮語法檢查? – khellang 2011-06-05 12:15:39
@khellang像'for'這樣的基本控制結構的檢查當然是其中的一部分,但我正在考慮注入基本的類型安全性和接口檢查(有沒有這樣的方法?)等等。 – vbence 2011-06-05 12:58:28