<cite id="ffb66"></cite><cite id="ffb66"><track id="ffb66"></track></cite>
      <legend id="ffb66"><li id="ffb66"></li></legend>
      色婷婷久,激情色播,久久久无码专区,亚洲中文字幕av,国产成人A片,av无码免费,精品久久国产,99视频精品3
      網易首頁 > 網易號 > 正文 申請入駐

      Bug 率狂降 50%?靠這5個 IDEA 插件就夠了!

      0
      分享至

      Java精選面試題(微信小程序):5000+道面試題和選擇題,真實面經,簡歷模版,包含Java基礎、并發、JVM、線程、MQ系列、Redis、Spring系列、Elasticsearch、Docker、K8s、Flink、Spark、架構設計、大廠真題等,在線隨時刷題!

      隨著業務的發展,系統會越來越龐大,原本簡單穩定的功能,可能在不斷迭代后復雜度上升,潛在的風險也隨之暴露,導致最終服務不穩定,造成業務價值的損失。

      而為了減少這種情況,其中一種比較好的方式就是提高代碼質量,比如通過代碼審查,從而降低錯誤風險,但是,代碼審查難度大,代碼缺陷、漏洞不易發現,且審查工作隨著代碼量增加而增加,審查效率低。

      工欲善其事,必先利其器,因此,這篇文章給大家介紹幾種檢查代碼質量的利器,Alibaba Java Coding Guidelines、CheckStyle、PMD、FindBugsSonarLint,讓你在關注代碼質量的同時,減少 code review 的工作量,提高 code review 的效率,并通過代碼質量分析去反向提升我們的代碼編寫能力

      一、Alibaba Java Coding Guidelines 1、整體介紹:

      Alibaba Java Coding Guidelines專注于Java代碼規范,目的是讓開發者更加方便、快速規范代碼格式。

      該插件在掃描代碼后,將不符合規約的代碼按Blocker、Critical、Major三個等級顯示出來,并且大部分可以自動修復,它還基于 Inspection 機制提供了實時檢測功能,編寫代碼的同時也能快速發現問題所在。

      阿里巴巴規約掃描包括:

      • OOP規約

      • 并發處理

      • 控制語句

      • 命名規約

      • 常量定義

      • 注釋規范

      2、安裝步驟:

      File>Settings>Plugins>Marketplace搜索 “Alibaba Java Coding Guidelines”,按照提示進行安裝,然后重啟即可。

      3、使用說明: 3.1、運行方式:

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


      2)在編輯界面或者項目區域點擊右鍵,在右鍵菜單中選擇“編碼規約掃描”即可:

      3.2、菜單功能:

      • 編碼規約掃描:開始掃描代碼

      • 打開/關閉實時檢測功能:實時檢測代碼,一般機器性能比較好的話可以開啟這項功能

      • 切換語言至英文:中英文切換

      3.3、運行結果:

      掃描完成后顯示結果如下,我們可以看到掃描結果主要分為 Blocker(阻擋者)、Critical(嚴重問題)、Major(主要的)三個大類,它們表示的是問題的嚴重程度,嚴重程度由高到低為:Blocker > Critical > Major,至于每一類中都會包含什么樣的問題,圖中的內容已經說明了一切。


      選中其中的一個問題項目,會出現如下內容(如果當前鼠標點擊的是最終項,右邊區域顯示的是其它的內容,后面會再講到):


      1)指定區域搜索同一類問題:

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


      這里選擇掃描區域,來掃描鼠標選中的同類問題。如果按照默認選擇,那么運行后的結果就如下圖所示:


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

      2)預覽具體的不規范代碼:

      如果點擊的是最終的問題點或者問題所在的類文件,那顯示的就是如下界面,預覽該處不規范的代碼。


      3.4、工具欄功能介紹:


      • Rerun Inspection: 重新運行一次掃描

      • Close:關閉真個AJCG面板

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

      • Collapse All:收起結果的樹狀結構

      • Go Pre Problem:選擇上一個問題

      • Go Next Problem:選擇下一個問題

      • Help:幫助

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

      • Group by derectory:按目錄分組/按類名分組間切換

      • Filter resoled items:過濾掉已經解決的項

      • Autoscroll to Source:自動滾動到源碼

      • Export:導出,可以導出為XML和HTML兩種格式

      • Edit Settings:編輯設置

      二、CheckStyle: 1、整體介紹:

      CheckStyle 側重檢查編碼格式和代碼風格規范,如命名規范、Javadoc注釋規范、空格規范、size度量(如過長的方法)、重復代碼、多余Imports等,從而有效約束開發人員更好地遵循代碼編寫規范。Checkstyle主要是文法層面的代碼編寫規范的分析,對bug幾乎沒什么發現能力。

      Checkstyle插件中默認內置有2個執行代碼檢查的配置文件(Sun ChecksSun Checks),但是這兩個文件檢查的非常詳細嚴格,即使優秀的開源項目也會檢查出來有非常多的錯誤告信息,所以需要導入我們自定義的配置文件。

      2、安裝步驟:

      通過File>Settings>Plugins>Marketplace搜索 “CheckStyle”,按照提示進行安裝,然后重啟即可。

      3、使用說明:

      可以看到基本都是一些縮進啥的編碼規范,可以不用太關注

      三、PMD 1、整體介紹:

      PMD側重面向安全編碼規則,且具備一定的數據流分析和路徑分析能力,能力比CheckStyle稍微強點,并且 PMD 支持自定義規則,PMD可以直接使用的規則包括以下內容:

      • 潛在的bug:空的try/catch/finally/switch語句

      • 未使用的代碼(Dead code):未使用的變量、參數、私有方法等

      • 可選的代碼:String/StringBuffer的濫用

      • 復雜的表達式:不必須的if語句、可被while替代的for循環

      • 重復的代碼:拷貝/粘貼代碼意味著拷貝/粘貼bugs

      • 循環體創建新對象:盡量不要在循環體內實例化新對象

      • 資源關閉:Connect,ResultStatement等使用之后確保關閉掉

      2、安裝步驟:

      通過File>Settings>Plugins>Marketplace搜索 “PMDPlugin”,按照提示進行安裝,然后重啟即可

      3.1、運行方式:

      1)從Tools菜單中啟動:

      通過Tools>Run PMD可以看到如下的界面,如果通過該方式啟動,掃描的范圍就是整個項目中的文件了。



      • Pre Defined:預定義的規則,也就是插件自帶的檢測規則。后面展開的列表中列出了所有的規則列表,想掃描哪一種類型的問題,點擊即可。其中“All”表示使用所有的規則。

      • Custom Rules:自定義的檢測規則,PMD允許用戶根據需要自定義檢查規則,默認這里是不可點擊的,需要在設置中導入自定義規則文件后方可選擇。

      2)從右鍵菜單中啟動:

      在文件或者編輯器中點擊右鍵,也可以看到“Run PMD”選項,如果通過該方式啟動, 檢測范圍取決于鼠標或光標當前所選中的區域。

      3.2、運行結果:

      運行后會出現如上所示的面板,左邊工具欄,鼠標停留在上面會提示其功能;右邊顯示了檢測結果,當點擊具體某一問題項時,會跳轉到對應的源碼中。

      3.3、配置檢測規則:

      通過File>Settings>Other Settings>PMD可以打開檢測規則的設置界面:


      在 “RuleSets(規則設置)” 界面可以管理自定義的檢測規則。因為在實際工作中,可能需要根據實際情況自定義檢測規則,就可以通過這里導入,如果要使用它,需要在啟動PMD進行檢測時選擇該自定義規則。

      點擊“Options”選項卡,在其中可以配置一些檢測規則選項:


      其中重點需要留意的是“Skip TestSource”這一項,因為在項目中有不少Android Studio自動生成的測試代碼,如下所示,選擇上述選項后可以將其過濾掉。


      四、FindBugs 1、整體介紹:

      FindBugs 側重于發現代碼中存在的bug,如運行時錯誤檢測(空指針檢查、未合理關閉資源、字符串相同判斷錯(==,而不是equals)等),它可以簡單高效全面地幫助我們發現程序代碼中存在的bug以及潛在隱患,針對各種問題,它提供了簡單的修改意見供我們參考

      2、安裝步驟:

      通過File>Settings>Plugins>Marketplace搜索 “FindBugs”,按照提示進行安裝,然后重啟即可

      3、使用說明:

      FindBugs 可以分析單個文件、包下面的所有文件、整個module下的文件、整個project下的文件,右鍵想要分析的文件名/包名/module名/project


      分析完之后就會出現結果面板


      點擊對應的item在右邊會定位到具體的代碼,這是根據提示進行處理修改就行


      4、附:常見的錯誤信息

      4.1、Bad practice代碼壞習慣:


      4.2、Dodgy code糟糕的代碼:


      4.3、Internationalization代碼國際化相關:


      4.4、Performance代碼性能相關:


      4.5、Experimental


      4.6、Malicious code vulnerability惡意破壞代碼相關:


      4.7、Multithreaded correctness多線程代碼正確性相關:


      4.8、Correctness代碼正確性相關:


      五、SonarLint 1、整體介紹:

      sonar 比 Findbugs 高了一個層級,它不僅關注常規靜態BUG,還關注到了如代碼質量、包與包、類與類之間的依賴情況,代碼耦合情況,類、方法、文件的復雜度,代碼中是否包含大量復制粘貼的代碼,關注的是項目代碼整體的健康情況。sonar 有兩種使用方式:插件和客戶端,sonar 的插件名稱為 sonarLint。

      2、安裝步驟:

      通過File>Settings>Plugins>Marketplace搜索 “SonarLint”,按照提示進行安裝,然后重啟即可

      3、使用說明:

      右鍵項目或者文件進行如上圖所示操作,執行之后可以看到如下信息,如果代碼中有不合理的地方會在report中顯示,同時點擊錯誤的地方在右邊會給出建議的修改供參考。


      4、配置 SonarLint 服務端: 4.1、配置 Sonar 服務器:

      sonarLint 插件的使用場景是自用自審,但 sonar 也提供了平臺版本,使用場景則是他審,sonar 平臺的搭建就不在這篇文章介紹了,感興趣的讀者可以自己上網查看,我們這里主要介紹如何在 sonarLint 插件中配置關聯 sonar 平臺服務器的工程,進行本地檢查:


      點擊新增按鈕,輸入Configuration Name,配置sonarlint服務器的地址,然后下拉框選擇Login/Password,輸入sonarlint服務器的賬號密碼


      4.2、具體 Sonar工程配置:

      配置完服務器之后,需要針對具體工程進行配置,點擊connection下拉框,選擇上面配置好的服務器連接,然后點擊Search in list,找到對應的工程:


      4.3、使用 SonarLint 檢查:

      配置完上面兩步之后,接下來就可以選擇要進行檢查的類或者目錄進行sonarlint檢查了(跟第3點的使用方式一致),同時,在commit代碼的時候,勾選 “Perform Sonarlint analysis”,會針對你要提交的代碼進行sonarlint檢查


      總結:

      1)檢查代碼規范的話,直接使用Alibaba Java Coding Guidelines就可以了

      2)找 BUG 的話,使用PMD、Findbugs、SonarLint相互補充:

      • PMD 自定義能力強,用來自定義項目BUG規則非常好用

      • Findbugs 找 BUG 能力很強,我們拿找到的BUG給新員工培訓也很好。

      • SonarLint 規則豐富,比 Findbugs 能覆蓋到更全的場景

      構建高質量的技術交流社群,歡迎從事編程開發、技術招聘HR進群,也歡迎大家分享自己公司的內推信息,相互幫助,一起進步!

      來源:https://blog.csdn.net/a745233700/article/details/126202100

      公眾號“Java精選”所發表內容注明來源的,版權歸原出處所有(無法查證版權的或者未注明出處的均來自網絡,系轉載,轉載的目的在于傳遞更多信息,版權屬于原作者。如有侵權,請聯系,筆者會第一時間刪除處理!

      最近有很多人問,有沒有讀者交流群!加入方式很簡單,公眾號Java精選,回復“加群”,即可入群!

      文章有幫助的話,點在看,轉發吧!

      特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

      Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

      相關推薦
      熱點推薦
      喜劇圈半壁江山齊聚!沈騰馬麗拜訪趙本山,曝聚會照范丞丞也來了

      喜劇圈半壁江山齊聚!沈騰馬麗拜訪趙本山,曝聚會照范丞丞也來了

      娛樂圈圈圓
      2025-12-20 10:51:13
      55歲鐘麗緹中年發福太多!胖到180斤 胸大腚圓 滿身肥肉穿吊帶

      55歲鐘麗緹中年發福太多!胖到180斤 胸大腚圓 滿身肥肉穿吊帶

      廣西阿妹香香
      2025-12-20 15:58:58
      克林頓與愛潑斯坦案受害者共浴照片披露

      克林頓與愛潑斯坦案受害者共浴照片披露

      揚子晚報
      2025-12-20 11:50:57
      美媒:“健康熱”激發中國人“戶外風”穿搭潮

      美媒:“健康熱”激發中國人“戶外風”穿搭潮

      參考消息
      2025-12-19 10:22:52
      深圳烤雞少年塌房!所謂秘方竟是“肉寶王”,評論區炸鍋

      深圳烤雞少年塌房!所謂秘方竟是“肉寶王”,評論區炸鍋

      胡嚴亂語
      2025-12-20 20:19:26
      印度約8000名考生坐機場跑道上答題考試,競爭僅有的187個政府職位

      印度約8000名考生坐機場跑道上答題考試,競爭僅有的187個政府職位

      觀威海
      2025-12-20 16:42:05
      杭州男子停車救人,沒想到救的竟是自己老婆!腦溢血9個月沒有后遺癥,網友:真的是愛的魔力……

      杭州男子停車救人,沒想到救的竟是自己老婆!腦溢血9個月沒有后遺癥,網友:真的是愛的魔力……

      環球網資訊
      2025-12-20 17:20:34
      中國證監會原主席肖鋼:人工智能技術快速迭代,導致投資面臨加速折舊風險,需構建適配金融體系

      中國證監會原主席肖鋼:人工智能技術快速迭代,導致投資面臨加速折舊風險,需構建適配金融體系

      新浪財經
      2025-12-20 17:36:13
      1-1大冷!中國隊逼平韓國隊,末輪贏球=擺脫倒數第一

      1-1大冷!中國隊逼平韓國隊,末輪贏球=擺脫倒數第一

      何老師呀
      2025-12-20 16:36:13
      咸魚還是太全面了,怪不得人稱國內黑市

      咸魚還是太全面了,怪不得人稱國內黑市

      另子維愛讀史
      2025-12-20 17:07:20
      圣誕節快到了,給個準話,還要不要抵制洋節?

      圣誕節快到了,給個準話,還要不要抵制洋節?

      沉思的野獸
      2025-12-19 19:07:28
      克林頓罕見強硬發聲:這不是烏克蘭的戰爭,而是美國的戰爭!

      克林頓罕見強硬發聲:這不是烏克蘭的戰爭,而是美國的戰爭!

      老馬拉車莫少裝
      2025-12-20 14:50:21
      5國首腦直奔東京,高氏癟嘴偷笑之際,日外相跑了,中方召見11國

      5國首腦直奔東京,高氏癟嘴偷笑之際,日外相跑了,中方召見11國

      博覽歷史
      2025-12-20 04:30:05
      遼寧男籃2分險勝寧波!楊鳴拒絕爆冷,威爾斯26分,付豪16分

      遼寧男籃2分險勝寧波!楊鳴拒絕爆冷,威爾斯26分,付豪16分

      體壇瞎白話
      2025-12-20 21:44:38
      高盛:未來2年房價或再跌10-30%  警告可能出現房價負反饋循環

      高盛:未來2年房價或再跌10-30% 警告可能出現房價負反饋循環

      財富情報局
      2025-12-19 23:06:25
      熱刺惡漢5分鐘3次激怒利物浦!肘擊+掐脖均逃牌,輸球后追罵裁判

      熱刺惡漢5分鐘3次激怒利物浦!肘擊+掐脖均逃牌,輸球后追罵裁判

      我愛英超
      2025-12-21 04:58:36
      發改委雄文,預示收入分配制度重大突破,釋放什么信號?

      發改委雄文,預示收入分配制度重大突破,釋放什么信號?

      華山穹劍
      2025-12-20 20:01:29
      降息50基點!剛剛,集體宣布!

      降息50基點!剛剛,集體宣布!

      證券時報
      2025-12-20 19:40:06
      兩岸好消息:“承認”共屬中國!臺當局終于做對1次,熟悉統一

      兩岸好消息:“承認”共屬中國!臺當局終于做對1次,熟悉統一

      愛吃醋的貓咪
      2025-12-20 21:11:30
      國家正式發力!2026 年 元旦起,存取現金統一按 “新規” 來!

      國家正式發力!2026 年 元旦起,存取現金統一按 “新規” 來!

      李博世財經
      2025-12-20 17:00:38
      2025-12-21 05:44:49
      Java精選
      Java精選
      一場永遠也演不完的戲
      1764文章數 3859關注度
      往期回顧 全部

      科技要聞

      許四清:具身智能的"ChatGPT時刻"還未到來

      頭條要聞

      高市早苗擔心被邊緣化 要趕在特朗普訪華前行動

      頭條要聞

      高市早苗擔心被邊緣化 要趕在特朗普訪華前行動

      體育要聞

      我開了20年大巴,現在是一名西甲主帥

      娛樂要聞

      2026央視跨年晚會陣容曝光,豪華陣仗

      財經要聞

      求解“地方財政困難”

      汽車要聞

      嵐圖推進L3量產測試 已完成11萬公里實際道路驗證

      態度原創

      家居
      時尚
      本地
      親子
      手機

      家居要聞

      高端私宅 理想隱居圣地

      最顯腿細的騎士靴,誰穿誰是腿精

      本地新聞

      云游安徽|訪黃山云海古村,讀一城山水風骨

      親子要聞

      張柏芝小兒子罕見露臉,網友驚呼太像媽媽,三個兒子各有千秋

      手機要聞

      vivo X200T再曝,天璣 9400+芯片加持

      無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 欧美影院成年免费版| 亚洲精品久久| 国产成人av免费观看| 少妇大叫太大太爽受不了| 探花无码| 亚洲av无码片在线播放| 日日噜噜夜夜爽爽| 米脂县| 中文字幕高清| 国产乱子经典视频在线观看| 97视频在线播放| 乱精品一区字幕二区| jizz国产| 免费无码一区无码东京热| 日韩在线视频观看免费网站| 日日夜夜天天综合| 人妻色综合| 中文无码日韩欧免费视频| 狠狠综合亚洲综合亚洲色| 人人凹凸XX凹凸爽凹凸| 妓女视频一区二区| 国产真实露脸乱子伦| 婷婷综合五月| 亚欧洲乱码视频在线专区| 中国亚州女人69内射少妇| 成人自拍中文字幕| 精品国模| 夜夜添无码试看一区二区三区| 成人亚洲欧美成αⅴ人在线观看 | 伊人偷拍| 视频一区二区三区中文字幕狠狠 | 国产超碰人人| 久久精品中文字幕有码| 日本午夜视频| 色护士极品影院| 欧美色女人| 亚洲精品一区二区三区中文字幕| 大色欧美| 色综合热无码热国产| 18禁裸乳无遮挡自慰免费动漫| 午夜精品久久久久久久爽|