Eclipse 中CheckStyle安裝和使用指南
1      概述
1.1      在軟件開發的過程中,以下幾種情形隨處可見
1.1.1      軟件維護時間長,而且維護人員的積極性不高
做過軟件維護的開發人員,尤其是在接手不是自己開發產品的源碼的時候,即使有良好的文檔說明,仍然會對代碼中冗長、沒有注釋的段落"嘆為觀止"。理解尚且如此困難,何況要修改或者增加新的功能。因此,很多開發人員不愿意進行軟件維護的工作。
1.1.2      新的開發人員融入團隊的時間比較長
除了沒有良好的培訓、文檔等有效的機制以外,每個人一套的編碼風格,也容易造成新成員對于已有代碼的理解不夠,甚至出現偏差。

編碼規范,作為解決以上問題的方案已經得到了很長時間的應用。而在產品或者項目實際開發的過程中,僅有Code Conventions是不能解決Code的問題的。它往往和Code Review配合,作為代碼質量保證的手段。
1.2      Code Review的層次與內容
1.2.1Code Review的層次與內容
Code Review就是審查代碼的質量。根據形式分為兩種,一種是交叉代碼審查,就是自己的代碼由他人來檢查,就象檢查作業一樣;另一種是代碼會審,就是以會議的形式,大家共同審核代碼的質量。
1.1.3      Code Review 的目的
?      在項目早期就能夠發現代碼中的BUG
?      幫助初級開發人員學習高級開發人員的經驗,達到知識共享
?      避免開發人員犯一些很常見,很普通的錯誤; 保證項目組人員的良好溝通;項目或產品的代碼更容易維護
1.1.4      一般情況下,Code Review的內容與層次如下
?      編碼風格與代碼規范一致性:檢查代碼是否符合編碼規范,確保所有人寫的代碼基本一致
?      代碼滿足基本的功能要求:檢查代碼的邏輯實現,以及單元測試的編寫策略,確認實現功能性需求
?      代碼滿足性能等非功能性需求:非功能性需求一般不便于測試,需要借助一定的工具和Review人員的素質,針對編碼中對于性能影響的瓶頸給出解決方案
?      去除冗余,提高代碼可讀性:適當使用 Refactorying技術,去除代碼中的Bad Smell;如果有需要,可以Refactorying to Pattern
2      CheckStyle安裝

在Eclipse當中安裝CheckStyle插件非常方便,我們可以參照以下五個步驟進行:

2.1在Eclipse當中分別打開一下菜單 Help->Software Updates->Find and Install

2.2選擇 Search for new features to install 選項然后點擊 Next

2.3新建一個 New Remote Site...

2.4輸入名稱(比如:Checkstyle Plug-in) 和下面的的 URL: http://eclipse-cs.sourceforge.net/update

2.5開始安裝


3CheckStyle使用方法


3.1查看

安裝好CheckStyle以后,不符合CheckStyle編碼規范的信息將會出現在”問題(problem)”視圖當中:

 

可以點擊問題視圖的”過濾器:;配置顯示內容:


CheckStyle的檢查規則包含在XML格式的配置文件里。CheckStyle默認的sun規范檢查文件是:sun_checks.xml


3.2配置

CheckStyle: Windows ==> perference ==> checkstyle 配置的導入/導出就在配置界面右側

 

我們也可以導出以后,經過修改量身定做自己的規范,比如我們已經按照規范做好了一個代碼規范文件,并且取名為中企動力,那么我們可以把這個規范導入,在location中加入自定義的xml文件

Type選擇External Configuration File,名稱填上:中企動力,然后填上相應的描述,然后點擊browse按鈕找到相應的配置文檔,點擊ok就可以了.
這樣checkstyle當中又多了一個叫做中企動力的規范

 

標準配置的導入/導出功能可以大大降低開發人員針對以上工具的學習時間,對于大部分開發者來說不需要詳細了解其中所有的選項配置,只要知道將標準配置導入就可以了。

3.3使用


    CheckStyle是一個非常復雜的代碼風格檢查過程:包括縮進,命名規范等,因此缺省是Disable的,啟動針對一個項目的CheckStyle需要在點:項目的properties==>CheckStyle==>Checkstyle active for this project勾上

 
同時我們可以對該項目的checkstyle制定代碼規范,可以點擊右邊的add按鈕,彈出編輯窗口,然后下拉(Check Configuration)條選定指定相應的規范,這里用那個我們剛才已經配置寫的那個叫做”中企動力”的規范

 

這樣,我們就能使用CheckStyle對文檔進行規范了,下面這個例子是使用CheckStyle以后,在eclipse中對不符合規范的代碼進行標注,這樣我們就可以按照”中企動力”規范對代碼進行約束了.
下圖當中左邊的放大鏡圖標表示此行代碼不符合規范,當鼠標懸停在上面的時候,會顯示這行代碼的問題所在.

 當然,在使用jalopy之后,可以使你根據CheckStyle修改的problem少一些。當然,eclipse中的formate也有同樣的功能,但是在符合sun CheckStyle的要求上,jalopy相對好一些

 

4結論

我們可以利用CheckStyle可以方便的對于編碼的Code Conventions進行檢查,同時,也有效地減少了Code Review的工作,使得開發人員的精力更多的集中到邏輯和性能檢查。同時, 修改、定型CheckStyle的配置文件:按照基本配置文件執行一段時間(2~3周),聽取開發人員的反饋意見,修改配置信息.