色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

代碼檢查的方式有三種

jf_21561199 ? 來源:jf_21561199 ? 作者:jf_21561199 ? 2024-02-25 10:08 ? 次閱讀

【摘要】代碼檢查中,提到的編程規范,規則集,規則,規則用例(場景、誤報、檢出)分別代表什么意思呢?

SAST 靜態檢查領域,代碼檢查服務可以幫助開發者發現和修復代碼中的風格、質量和安全等方面的問題。那么在代碼檢查服務中,提到的編程規范,規則集,規則,規則用例(場景、誤報、檢出)分別代表什么意思呢?

編程規范

在 SAST 靜態代碼檢查領域,編程規范是一套在組織層面關于代碼編寫的標準或準則。它可以幫助開發者遵循一致的風格和習慣,提高代碼的可讀性、可維護性、可移植性、安全性與可靠性,目的在于指導公司、部門、項目組編寫出 CleanCode 及高質量的軟件。

編程規范通常會參考業界標準及實踐,并包含命名、縮進、注釋、格式等方面的內容,業界內比較有名的有華為編程規范。

編程規范內的規則通常被用于在特定場景下使用,檢測出代碼中的漏洞和缺陷。但是這些規則并非就是萬能完美的,在一些場景下,可能會導致誤報率、漏報率高的情況發生。如果在日常使用中發現某些規則不適合或者無法遵循,經過團隊共同研討決策,是可以對規范中的規則進行改進甚至下線處理的。

注意,團隊內在使用編程規范的時候,是希望團隊成員都具有相應語言的基礎編程能力,而不是說希望通過編程規范來學習某個具體的語言。

規則集

規則集則是一組用于做代碼檢查的規則組成的集合。

一般根據不同的檢查目標和需求,規則集也有相應的分類,比如對安全類、安卓應用、編程風格這些類別進行檢查的時候,規則集內的規則也會有不同的選擇。

規則集可以應用在不同的范圍上,比如:公司最小規則集可以在全公司范圍內使用,產品線規則集則可以在最小規則集的基礎上再額外加些產品線特有的規則進去,構建一個范圍更大的產品線級規則集。

規則集也可以在不同的階段使用。比如針對本地 IDE 編碼階段,可以構建一個 IDE 插件檢查規則集在本地實時進行檢查。在提交增量代碼階段,使用一個更大范圍的規則集對增量代碼進行自動化檢查。在要進行版本級掃描階段,與流水線協同提供全面、深度的全量檢查。

wKgaomXYo62AeaT3AADeyFO_lyA012.png

華為云 CodeArtsCheck 的系統推薦規則集

規則

規則是一種用來指導和約束代碼檢查的標準和準則。它可以根據不同的編程語言、編碼規范、質量要求等因素來制定。每個規則可以說都定義了一個缺陷模式,當該模式在目標代碼中匹配成功后會生成一個檢查問題。

每個規則都會包含一個 ID 和一個操作。ID 可以說是規則唯一的標識符,用于區分不同的規則;操作則用于指定改規則在代碼檢查期間應該執行的動作,比如告警等。

規則一般會包含描述信息(包含編寫這條規則的背景等)、正確的代碼示例、錯誤的代碼示例、修復建議、參考的規范等信息。

wKgZomXYo62AYL81AADj2n83XMM218.png

華為云 CodeArtsCheck 的規則信息

規則用例

規則用例是一種用于驗證代碼檢查規則是否按照預期正確工作的測試用例。一般它會包括一個或多個測試輸入(代碼片段),執行條件以及預期的檢查結果(包括是否有問題,問題的類型,問題的位置等)。

規則用例可以說是檢驗和驗證規則的一種手段,可以幫助開發人員和測試人員評估代碼檢查規則的有效性、準確性和覆蓋性。

而和規則用例配套的術語則有:場景,誤報,檢出等。

場景

場景是一種描述代碼檢查規則應用的具體情況或背景的方法,它可以說是規則用例的集合(包含 1 個或多個規則用例)以及一些相關的信息(項目類型、編程語言、編碼規范等)的結合。場景可以比規則用例更全面的模擬代碼檢查規則的使用場景。

誤報

誤報是指代碼檢查服務錯誤地報告了一個不存在的問題或一個錯誤的問題類型的狀況。誤報一般是由于代碼檢查規則的設計缺陷、實現錯誤、使用場景不匹配或配置不當等原因造成的,會導致開發人員和測試人員對代碼檢查服務的信任度降低。

檢出

檢出則和誤報完全相反,是個好的現象,是指代碼檢查服務正確地報告了一個確實存在的問題及正確的問題類型的狀況。檢出高可以幫助開發人員預防和修復潛在的缺陷。

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4780

    瀏覽量

    68529
  • 華為云
    +關注

    關注

    3

    文章

    2445

    瀏覽量

    17410
收藏 人收藏

    評論

    相關推薦

    systemd journal收集日志的三種方式

    隨著 systemd 成了主流的 init 系統,systemd 的功能也在不斷的增加,比如對系統日志的管理。Systemd 設計的日志系統好處多多,這里筆者就不再贅述了,本文筆者主要介紹 systemd journal 收集日志的三種方式
    的頭像 發表于 10-23 11:50 ?235次閱讀
    systemd journal收集日志的<b class='flag-5'>三種</b><b class='flag-5'>方式</b>

    I2S左對齊,右對齊跟標準的I2S三種格式,那么這三種格式各有什么優點呢?

    大家好,關于I2S格式,兩個疑問請教一下 我們知道I2S左對齊,右對齊跟標準的I2S三種格式,那么這三種格式各有什么優點呢? 而且對于標準的I2S格式,32FS傳輸16bit的數
    發表于 10-21 08:23

    Windows管理內存的三種主要方式

    Windows操作系統提供了多種方式來管理內存,以確保系統資源的有效利用和性能的優化。以下是關于Windows管理內存的三種主要方式的詳細闡述,包括堆內存管理、虛擬內存管理以及共享內存管理,每種
    的頭像 發表于 10-12 17:09 ?707次閱讀

    簡述三種esp32的開發方式是什么

    ESP32是一款由樂鑫(Espressif)推出的低功耗、高性能的Wi-Fi和藍牙雙模無線通信芯片,廣泛應用于物聯網、智能家居、智能硬件等領域。本文將詳細介紹三種ESP32的開發方式:Arduino
    的頭像 發表于 08-20 09:11 ?2859次閱讀

    計算機網絡中的三種通信方式

    計算機網絡中的三種通信方式,即單工通信、半雙工通信和全雙工通信,是理解和設計高效網絡架構的基礎。每種通信方式都有其獨特的特性、應用場景及優缺點。以下是對這三種通信
    的頭像 發表于 08-07 15:00 ?2487次閱讀

    簡述斬波電路的三種控制方式

    斬波電路是一常見的電力電子器件,廣泛應用于直流電壓調節、電壓變換、電流變換等領域。它可以實現對電流和電壓的控制,以滿足不同的電氣設備的需求。斬波電路的控制方式主要有三種:脈寬調制控制、頻率調制控制
    的頭像 發表于 03-11 15:22 ?3880次閱讀

    熱傳遞的三種方式是什么

    熱傳遞三種基本形式:導熱(Thermal Conduction)、對流(Thermal Convection)和輻射(Thermal Radiation)。每種形式都有其獨特的物理過程和應用領域
    的頭像 發表于 02-06 14:02 ?2224次閱讀
    熱傳遞的<b class='flag-5'>三種</b><b class='flag-5'>方式</b>是什么

    光耦隔離 電容隔離 磁隔離這三種隔離方式各有什么優缺點?

    光耦隔離、電容隔離和磁隔離是三種常見的隔離方式,它們各有優缺點,適用于不同的應用場景。
    的頭像 發表于 01-30 15:38 ?5830次閱讀

    介紹三種建模方式

    據量大,而是指樣本的完備性。還有就是大數據或者AI被專業學者或者行業工程師所詬病的就是,純粹的數據驅動搞不出所以然出來,需要領域知識(即Domain Knowledge)的協助。此外,還有第三種建模方式就是混合驅動,即基礎物理模型加上數據驅動的
    的頭像 發表于 01-23 10:48 ?1818次閱讀

    運動控制的三種控制方式

    非標項目中有非常多的運動控制,根據系統配置、電機類型以及精度需求的不同主要有三種控制方式:開環控制、半閉環控制、全閉環控制。
    的頭像 發表于 01-23 09:48 ?1470次閱讀
    運動控制的<b class='flag-5'>三種</b>控制<b class='flag-5'>方式</b>

    嵌入式Linux開發的三種方式

    嵌入式Linux開發主要有三種方式:裸機開發、SDK開發和驅動開發。
    的頭像 發表于 01-22 14:22 ?961次閱讀

    通過TestStand三種主要運行方式探究TestStand開放式架構

    在這張圖中,我們可以看到三種主要運行方式分別是”Test UUTs”、”Single Pass”、”Run MainSequence”。大家不妨先嘗試一下看看同一個序列文件用三種運行方式
    的頭像 發表于 01-19 17:34 ?4677次閱讀
    通過TestStand<b class='flag-5'>三種</b>主要運行<b class='flag-5'>方式</b>探究TestStand開放式架構

    自動控制的基本方式三種是什么

    自動控制是指利用特定的設備和技術手段,通過對被控制系統的輸入信號進行監測和調整,以實現期望的輸出狀態或目標。自動控制的基本方式三種:開環控制、閉環控制和神經網絡控制。 第一基本
    的頭像 發表于 01-17 09:38 ?3551次閱讀

    分布式鎖的三種實現方式

    分布式鎖的三種實現方式? 分布式鎖是在分布式系統中用于實現對共享資源進行訪問控制的一機制。分布式鎖的實現需要考慮高可用性、高性能和正確性等方面的問題。在實際應用中,多種不同的
    的頭像 發表于 12-28 10:01 ?896次閱讀

    伺服電機的三種控制方式 如何確定選擇伺服電機控制方式

    伺服電機的三種控制方式 如何確定選擇伺服電機控制方式? 伺服電機是一能夠根據輸入信號實時調整轉速和位置的電動機。它通常用于需要高精度、高效率、高可靠性的工業領域,如機床、機器人、印刷
    的頭像 發表于 12-26 14:02 ?1600次閱讀
    主站蜘蛛池模板: 国产原创剧情麻豆在线| 亚洲精品国产高清嫩草影院| xxxx88| 嫩草影院一区| 99re6久久热在线视频| 乱子伦在线观看中文字幕| 总裁呻吟双腿大开男男H| 久久久性色精品国产免费观看 | 久久午夜伦理| 在线看片成人免费视频| 131美女爱做视频午夜剧场| 久久是热频国产在线| 中国午夜伦理片| 麻豆区蜜芽区| 99无码熟妇丰满人妻啪啪 | 亚洲国产在线2020最新| 韩国精品无码少妇在线观看网站| 亚洲免费观看在线视频| 久久re6热在线视频精品66| 中文字幕不卡一区二区三区| 蜜桃视频无码区在线观看| bl被教练啪到哭H玉势| 日本老妇一级特黄aa大片| 国产AV亚洲精品久久久久软件| 无人区国产片| 好男人在线视频| 在线看片亚洲| 欧美丰满白嫩bbxx| 第一次破女视频出血视频| 午夜看片a福利在线观看| 国产综合在线观看| 在线看片福利无码网址| 欧美白人战黑吊| 俄罗斯17vidio| 校花在公车上被内射好舒服| 九九精品国产亚洲A片无码| 午夜伦理电影在线观免费| 寂寞少妇直播| 4480YY旧里番在线播放| 热热久久超碰精品中文字幕| 国产精品AV色欲蜜臀在线|