天天看點

【工利其器】必會工具之(六)Alibaba Java Coding Guidelines篇——以後的Java代碼規範,就靠它了

為了讓開發者更加友善、并且達到快速規範代碼格式的目的并實行起來,阿裡巴巴基于《阿裡巴巴Java開發規約》手冊内容,研發了一套自動化的IDE檢測插件,它就是Alibaba Java Coding Guidelines 插件。2017年10月14日杭州雲栖大會,AJCG全球首發儀式正式啟動,規範正式以插件形式公開走向業界,引領Java語言的規範之路。該插件在掃描代碼後,将不符合規約的代碼按Blocker/Critical/Major三個等級顯示出來,并且大部分可以自動修複。它還基于Inspection機制提供了實時檢測功能,編寫代碼的同時也能快速發現問題所在。

前言

       轉載請聲明,轉載自【https://www.cnblogs.com/andy-songwei/p/11823957.html】,謝謝!

       對于Java代碼規範,業界有統一的标準,不少公司對此都有一定的要求。但是即便如此,龐大的Java使用者由于經驗很水準的限制,未必有規範編碼的意識,而且即便經驗豐富的老Java程式員也無法做到時刻将規範牢記于心。是以對于代碼規範掃描工具,一經問世就廣受青睐,阿裡巴巴出品的Alibaba Java Coding Guidelines(阿裡巴巴Java代碼規約掃描,以下簡稱為AJCG)插件便是其中之一。與很多其它流行的同類工具(如FindBugs,Lint等)相比,它更專注于Java代碼規範,而且預設采用中文,對于英文沒那麼好的開發者而言,這無疑是一種福利。本文将結合Android Studio(以下簡稱AS),介紹一下該插件的使用。

一、AJCG簡介

       為了讓開發者更加友善、并且達到快速規範代碼格式的目的并實行起來,阿裡巴巴基于《阿裡巴巴Java開發規約》手冊内容,研發了一套自動化的IDE檢測插件,它就是Alibaba Java Coding Guidelines 插件。2017年10月14日杭州雲栖大會,AJCG全球首發儀式正式啟動,規範正式以插件形式公開走向業界,引領Java語言的規範之路。該插件在掃描代碼後,将不符合規約的代碼按Blocker/Critical/Major三個等級顯示出來,并且大部分可以自動修複。它還基于Inspection機制提供了實時檢測功能,編寫代碼的同時也能快速發現問題所在。

二、在AS中安裝AJCG插件

       與其它的插件一樣,AJCG插件也提供了直接在AS的倉庫中安裝和手動離線安裝兩種方式。

  1、直接從AS的插件庫下載下傳安裝

       至于如何在AS插件庫中安裝插件,在我的另外一篇介紹FindBugs的文章【https://www.cnblogs.com/andy-songwei/p/11820564.html】中已經介紹過了,這裡就不贅述了。簡單說一下就是

  File > Settings > Plugins > Browse repositories 搜尋 “Alibaba Java Coding Guidelines”,按照提示進行安裝,然後重新開機即可。

  2、手動下載下傳并從磁盤安裝

       請從如下位址擷取離線安裝包:

       連結:https://pan.baidu.com/s/19MPJ-CVfZvf4K_PVXY8g6Q

       提取碼:it10 

三、使用AJCG

  1、啟動AJCG掃描 

       大緻可以通過如下兩種方式啟動AJCG進行掃描(好像還有别的啟動方式,咱們知道這兩種方式就夠了):

    (1)可以Tools > 阿裡編碼規約 > 編碼規約掃描

    (2)在編輯界面或者AS左邊的項目區域點選右鍵,在右鍵菜單中選擇“編碼規約掃描”即可。  

【工利其器】必會工具之(六)Alibaba Java Coding Guidelines篇——以後的Java代碼規範,就靠它了

  2、菜單功能

       第一種啟動方式比第二張多一項功能,這三項清單功能如下:

    (1)編碼規約掃描:開始掃描代碼。

    (2)打開/關閉實時檢測功能:實時檢測代碼,顧名思義,對代碼進行實時檢測。一般機器性能比較好的話可以開啟這項功能,如果已經開啟,這裡會顯示“關閉實時檢測功能”。

    (3)切換語言至英文:中英文切換。

  3、執行結果 

       掃描完成後顯示結果如下(如果目前滑鼠點選的是最終項,右邊區域顯示的是其它的内容,後面會再講到): 

【工利其器】必會工具之(六)Alibaba Java Coding Guidelines篇——以後的Java代碼規範,就靠它了

  4、指定區域搜尋同一類問題

       當點選③處的按鈕時,會彈出如下按鈕:

【工利其器】必會工具之(六)Alibaba Java Coding Guidelines篇——以後的Java代碼規範,就靠它了

 這裡選擇掃描區域,來掃描滑鼠選中的同類問題。如果按照預設選擇,那麼運作後的結果就是:

【工利其器】必會工具之(六)Alibaba Java Coding Guidelines篇——以後的Java代碼規範,就靠它了

 這裡我們可以看到,顯示了整個Project中的所有該類的問題。

  5、預覽具體的不規範代碼

       在第3點的執行結果中,如果點選的是最終的問題點或者問題所在的類檔案,那顯示的就是如下界面,預覽該處不規範的代碼。

【工利其器】必會工具之(六)Alibaba Java Coding Guidelines篇——以後的Java代碼規範,就靠它了

四、工具欄功能介紹

       工具欄的這些功能經常會用到,這裡簡單對每一個功能簡單介紹一下:

【工利其器】必會工具之(六)Alibaba Java Coding Guidelines篇——以後的Java代碼規範,就靠它了

  (1)Rerun Inspection: 重新運作一次掃描

  (2)Close:關閉真個AJCG面闆

  (3)Expand All:展開結果的樹狀結構,整個結果是樹狀結構的。

  (4)Collapse All:收起結果的樹狀結構

  (5)Go Pre Problem:選擇上一個問題

  (6)Go Next Problem:選擇下一個問題

  (7)Help:幫助

  (8)Group by Serverity:(不知道如何描述)

  (9)Group by derectory:按目錄分組/按類名分組間切換

  (10)Filter resoled items:過濾掉已經解決的項

  (11)Autoscroll to Source:自動滾動到源碼

  (12)Export:導出,可以導出為XML和HTML兩種格式

  (13)Edit Settings:編輯設定

五、掃描結果

       該部分區域顯示了執行結果,由于是設定的中文版,是以這裡顯示的都是中文,這看起來非常爽。

【工利其器】必會工具之(六)Alibaba Java Coding Guidelines篇——以後的Java代碼規範,就靠它了

       我們可以看到Blocker(阻擋者)、Critical(嚴重問題)、Major(主要的)三個大類,他們表示的是問題的嚴重程度,嚴重程度由高到低為:Blocker > Critical > Major。至于每一類中都會包含什麼樣的問題,圖中的中文已經說明了一切,這裡就不贅述了。

福利

       這提供一份《阿裡巴巴Java開發手冊(紀念版)》電子文檔

       連結:https://pan.baidu.com/s/1z2u1ITJGJvgsJqrgq_AYwQ

       提取碼:v9ja

結語

       本文隻介紹了AJCG常見的一些使用方法,一定還有很多很牛的功能,希望讀者們多多探索,多多交流,共同進步,謝謝!