<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Sonar在檢查java代碼隱患中的作用[轉]

    Sonar作為一個非常實用的代碼質量檢查工具,可以在各個維度對整個工程進行一個量化,如代碼的測試覆蓋率、代碼內聚性指標、代碼復雜度、代碼的重復性檢查、包之間的依存度以及代碼沖突性等,可以非常直觀的通過圖標看到這些數據,關于sonar的安裝和使用在本博的另一篇文章(《代碼質量檢查工具Sonar結合hudson、maven使用》)有詳細描述

     



     

    本文主要介紹sonar能夠檢查出的代碼隱患。

    • Avoid Decimal Literals In Big Decimal Constructor 應避免使用Decimal(0.5)這樣的做法,因為這樣是錯誤的不精確的
    • Avoid Rethrowing Exception 不應當在catch語句中重新拋出另外的異常
    • Avoid Throwing Null Pointer Exception 不應該拋出空指針異常
    • Boolean Instantiation 不需要實例化布爾變量,只需=Boolean.True or =Boolean.Flase
    • Close Resource 有未關閉的資源,需要使用finally語句塊確保安全
    • Collapsible If Statements 如果有多條if語句連續出現,可以使用短路條件if(A && B && ......)提高效率
    • Compare Objects With Equals 比較兩個對象應該使用equal而不是等于
    • Cyclomatic Complexity 通常來講,這個方法或者類太長了,需要分解
    • Dont Import Java Lang Java.Lang是默認引入的不需要顯示引入
    • Empty Finalizer或Empty Finally Block或Empty If Stmt或Empty Statement或Empty Static Initializer或Empty Switch Statements或Empty Synchronized Block或Empty Try Block或Empty While Stmt:這個是非常常見的代碼問題,if、switch、finally、try等內部是空的,很有可能是碼農忘記處理了
    • Equals Hash Code 方法equal重寫了但是hashcode未重寫
    • Equals Null 和null比較用==而不是用equals
    • If Else Stmts Must Use Braces或If Stmts Must Use Braces 編碼時if或者else不寫大括號,很容易出現問題
    • Magic Number 魔術數,指的是一個數字無端的出現在代碼中,但是卻不知道其含義,很常見
    • Naming - *** 通常是類、方法、變量的命名不規范
    • Replace Vector With List 應使用List來代替Vector提高效率
    • Security - Array is stored directly 通常是數組類型的參數使用時,沒有使用clone,方法直接改變了引用所指的對象
    • Singular Field 僅在某方法中使用的變量不應該聲明為實例變量
    • Unconditional If Statement 通常是If語句永遠為真或者永遠為假
    • Unnecessary Case Change 使用equalsIgnoreCase()更高效
    • Unused Private Field或Unused formal parameter或Unused local variable或Unused private method沒 有用到的變量、參數、方法
    • Useless Operation On Immutable 在方法體中修改了某值意圖想傳出來,但實際上操作的是一個新的對象或者值,如改變基本類型的參數

    以上是部分常見的隱患類型,還有不少其他的沒有寫入。



    眼鏡蛇

    posted on 2013-09-05 15:14 眼鏡蛇 閱讀(331) 評論(0)  編輯  收藏 所屬分類: Sonar

    <2025年7月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    導航

    統計

    常用鏈接

    留言簿(6)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产成人免费午夜在线观看| 无码国产精品一区二区免费3p| 成人网站免费观看| 亚洲福利电影在线观看| 在线观看成人免费视频不卡| 亚洲午夜久久久精品电影院| 亚洲免费中文字幕| 亚洲人成影院在线高清| 四虎成人免费观看在线网址| 亚洲人成色99999在线观看| 日韩成人免费aa在线看| 深夜a级毛片免费视频| 久久亚洲国产成人影院网站| 久久久久久久久久久免费精品| 久久亚洲精品视频| 99久热只有精品视频免费观看17| 亚洲欧洲日本精品| 成人黄18免费视频| 免费人成视频在线播放| 亚洲欭美日韩颜射在线二| 99视频在线免费| 亚洲中文字幕无码亚洲成A人片| 国产精品免费播放| 中文成人久久久久影院免费观看| 亚洲成人激情在线| 拨牐拨牐x8免费| 国产精品免费视频观看拍拍| 亚洲AV成人一区二区三区AV| 久久久久国产精品免费免费搜索| 国产成人综合亚洲| 亚洲AV中文无码字幕色三| 国产成人免费在线| 青青草97国产精品免费观看| 亚洲不卡中文字幕无码| 免费无码又爽又刺激聊天APP| 一区二区三区AV高清免费波多 | 亚洲XX00视频| 日本免费高清视频| 亚洲国产aⅴ成人精品无吗| 亚洲色婷婷六月亚洲婷婷6月| 亚欧在线精品免费观看一区|