91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

代碼檢查的方式有三種

jf_21561199 ? 來(lái)源:jf_21561199 ? 作者:jf_21561199 ? 2024-02-25 10:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

SAST 靜態(tài)檢查領(lǐng)域,代碼檢查服務(wù)可以幫助開(kāi)發(fā)者發(fā)現(xiàn)和修復(fù)代碼中的風(fēng)格、質(zhì)量和安全等方面的問(wèn)題。那么在代碼檢查服務(wù)中,提到的編程規(guī)范,規(guī)則集,規(guī)則,規(guī)則用例(場(chǎng)景、誤報(bào)、檢出)分別代表什么意思呢?

編程規(guī)范

在 SAST 靜態(tài)代碼檢查領(lǐng)域,編程規(guī)范是一套在組織層面關(guān)于代碼編寫(xiě)的標(biāo)準(zhǔn)或準(zhǔn)則。它可以幫助開(kāi)發(fā)者遵循一致的風(fēng)格和習(xí)慣,提高代碼的可讀性、可維護(hù)性、可移植性、安全性與可靠性,目的在于指導(dǎo)公司、部門(mén)、項(xiàng)目組編寫(xiě)出 CleanCode 及高質(zhì)量的軟件。

編程規(guī)范通常會(huì)參考業(yè)界標(biāo)準(zhǔn)及實(shí)踐,并包含命名、縮進(jìn)、注釋、格式等方面的內(nèi)容,業(yè)界內(nèi)比較有名的有華為編程規(guī)范。

編程規(guī)范內(nèi)的規(guī)則通常被用于在特定場(chǎng)景下使用,檢測(cè)出代碼中的漏洞和缺陷。但是這些規(guī)則并非就是萬(wàn)能完美的,在一些場(chǎng)景下,可能會(huì)導(dǎo)致誤報(bào)率、漏報(bào)率高的情況發(fā)生。如果在日常使用中發(fā)現(xiàn)某些規(guī)則不適合或者無(wú)法遵循,經(jīng)過(guò)團(tuán)隊(duì)共同研討決策,是可以對(duì)規(guī)范中的規(guī)則進(jìn)行改進(jìn)甚至下線處理的。

注意,團(tuán)隊(duì)內(nèi)在使用編程規(guī)范的時(shí)候,是希望團(tuán)隊(duì)成員都具有相應(yīng)語(yǔ)言的基礎(chǔ)編程能力,而不是說(shuō)希望通過(guò)編程規(guī)范來(lái)學(xué)習(xí)某個(gè)具體的語(yǔ)言。

規(guī)則集

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

一般根據(jù)不同的檢查目標(biāo)和需求,規(guī)則集也有相應(yīng)的分類(lèi),比如對(duì)安全類(lèi)、安卓應(yīng)用、編程風(fēng)格這些類(lèi)別進(jìn)行檢查的時(shí)候,規(guī)則集內(nèi)的規(guī)則也會(huì)有不同的選擇。

規(guī)則集可以應(yīng)用在不同的范圍上,比如:公司最小規(guī)則集可以在全公司范圍內(nèi)使用,產(chǎn)品線規(guī)則集則可以在最小規(guī)則集的基礎(chǔ)上再額外加些產(chǎn)品線特有的規(guī)則進(jìn)去,構(gòu)建一個(gè)范圍更大的產(chǎn)品線級(jí)規(guī)則集。

規(guī)則集也可以在不同的階段使用。比如針對(duì)本地 IDE 編碼階段,可以構(gòu)建一個(gè) IDE 插件檢查規(guī)則集在本地實(shí)時(shí)進(jìn)行檢查。在提交增量代碼階段,使用一個(gè)更大范圍的規(guī)則集對(duì)增量代碼進(jìn)行自動(dòng)化檢查。在要進(jìn)行版本級(jí)掃描階段,與流水線協(xié)同提供全面、深度的全量檢查。

wKgaomXYo62AeaT3AADeyFO_lyA012.png

華為云 CodeArtsCheck 的系統(tǒng)推薦規(guī)則集

規(guī)則

規(guī)則是一種用來(lái)指導(dǎo)和約束代碼檢查的標(biāo)準(zhǔn)和準(zhǔn)則。它可以根據(jù)不同的編程語(yǔ)言、編碼規(guī)范、質(zhì)量要求等因素來(lái)制定。每個(gè)規(guī)則可以說(shuō)都定義了一個(gè)缺陷模式,當(dāng)該模式在目標(biāo)代碼中匹配成功后會(huì)生成一個(gè)檢查問(wèn)題。

每個(gè)規(guī)則都會(huì)包含一個(gè) ID 和一個(gè)操作。ID 可以說(shuō)是規(guī)則唯一的標(biāo)識(shí)符,用于區(qū)分不同的規(guī)則;操作則用于指定改規(guī)則在代碼檢查期間應(yīng)該執(zhí)行的動(dòng)作,比如告警等。

規(guī)則一般會(huì)包含描述信息(包含編寫(xiě)這條規(guī)則的背景等)、正確的代碼示例、錯(cuò)誤的代碼示例、修復(fù)建議、參考的規(guī)范等信息。

wKgZomXYo62AYL81AADj2n83XMM218.png

華為云 CodeArtsCheck 的規(guī)則信息

規(guī)則用例

規(guī)則用例是一種用于驗(yàn)證代碼檢查規(guī)則是否按照預(yù)期正確工作的測(cè)試用例。一般它會(huì)包括一個(gè)或多個(gè)測(cè)試輸入(代碼片段),執(zhí)行條件以及預(yù)期的檢查結(jié)果(包括是否有問(wèn)題,問(wèn)題的類(lèi)型,問(wèn)題的位置等)。

規(guī)則用例可以說(shuō)是檢驗(yàn)和驗(yàn)證規(guī)則的一種手段,可以幫助開(kāi)發(fā)人員和測(cè)試人員評(píng)估代碼檢查規(guī)則的有效性、準(zhǔn)確性和覆蓋性。

而和規(guī)則用例配套的術(shù)語(yǔ)則有:場(chǎng)景,誤報(bào),檢出等。

場(chǎng)景

場(chǎng)景是一種描述代碼檢查規(guī)則應(yīng)用的具體情況或背景的方法,它可以說(shuō)是規(guī)則用例的集合(包含 1 個(gè)或多個(gè)規(guī)則用例)以及一些相關(guān)的信息(項(xiàng)目類(lèi)型、編程語(yǔ)言、編碼規(guī)范等)的結(jié)合。場(chǎng)景可以比規(guī)則用例更全面的模擬代碼檢查規(guī)則的使用場(chǎng)景。

誤報(bào)

誤報(bào)是指代碼檢查服務(wù)錯(cuò)誤地報(bào)告了一個(gè)不存在的問(wèn)題或一個(gè)錯(cuò)誤的問(wèn)題類(lèi)型的狀況。誤報(bào)一般是由于代碼檢查規(guī)則的設(shè)計(jì)缺陷、實(shí)現(xiàn)錯(cuò)誤、使用場(chǎng)景不匹配或配置不當(dāng)?shù)仍蛟斐傻?,?huì)導(dǎo)致開(kāi)發(fā)人員和測(cè)試人員對(duì)代碼檢查服務(wù)的信任度降低。

檢出

檢出則和誤報(bào)完全相反,是個(gè)好的現(xiàn)象,是指代碼檢查服務(wù)正確地報(bào)告了一個(gè)確實(shí)存在的問(wèn)題及正確的問(wèn)題類(lèi)型的狀況。檢出高可以幫助開(kāi)發(fā)人員預(yù)防和修復(fù)潛在的缺陷。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4969

    瀏覽量

    74014
  • 華為云
    +關(guān)注

    關(guān)注

    3

    文章

    2832

    瀏覽量

    19269
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    AI技術(shù)時(shí)代三種全新工作模式如何實(shí)現(xiàn)

    AI技術(shù)正在重塑我們的工作。前沿企業(yè)以“人類(lèi)主導(dǎo)、智能體運(yùn)營(yíng)”為核心,形成三種AI技術(shù)的融合模式:人類(lèi)+AI技術(shù)助手、人機(jī)混合、人類(lèi)主導(dǎo)智能體運(yùn)營(yíng),這些模式不僅提升效率,更在重構(gòu)協(xié)作方式,幫助組織以更低的阻力邁向成功。
    的頭像 發(fā)表于 01-29 15:08 ?560次閱讀

    C語(yǔ)言中實(shí)現(xiàn)函數(shù)宏的三種方式

    在宏的第一個(gè)分號(hào)后便結(jié)束。即 a = b 和 b = tmp 均不受控制語(yǔ)句所作用。 因此,在工程中,一般使用三種方式來(lái)對(duì)函數(shù)宏進(jìn)行封裝,分別為 {}、do{...}while(0
    發(fā)表于 12-29 07:34

    請(qǐng)問(wèn)CW32芯片的三種工作模式是什么?

    CW32芯片的三種工作模式是什么?
    發(fā)表于 12-26 06:48

    伺服電機(jī)的三種制動(dòng)方式什么區(qū)別?

    伺服電機(jī)作為自動(dòng)化控制系統(tǒng)中執(zhí)行元件的核心部件,其制動(dòng)性能直接影響設(shè)備的定位精度和安全可靠性。目前主流的伺服電機(jī)制動(dòng)方式包括動(dòng)態(tài)制動(dòng)、再生制動(dòng)和電磁機(jī)械制動(dòng)三種,它們?cè)谥苿?dòng)原理、應(yīng)用場(chǎng)景及技術(shù)特點(diǎn)上
    的頭像 發(fā)表于 09-19 18:26 ?1802次閱讀
    伺服電機(jī)的<b class='flag-5'>三種</b>制動(dòng)<b class='flag-5'>方式</b><b class='flag-5'>有</b>什么區(qū)別?

    TC377配置SMU FSP時(shí),如何配置頻率參數(shù);三種模式何區(qū)別,配置上有何區(qū)別?

    TC377配置SMU FSP時(shí),如何配置頻率參數(shù);三種模式何區(qū)別,配置上有何區(qū)別?
    發(fā)表于 08-08 07:48

    MEMS中的三種測(cè)溫方式

    在集成MEMS芯片的環(huán)境溫度測(cè)量領(lǐng)域,熱阻、熱電堆和PN結(jié)原理是三種主流技術(shù)。熱阻是利用熱敏電阻,如金屬鉑或注入硅的溫度電阻系數(shù)恒定,即電阻隨溫度線性變化的特性測(cè)溫,電阻變化直接對(duì)應(yīng)絕對(duì)溫度,需恒流源供電。
    的頭像 發(fā)表于 07-16 13:58 ?1679次閱讀
    MEMS中的<b class='flag-5'>三種</b>測(cè)溫<b class='flag-5'>方式</b>

    1553B總線常見(jiàn)三種組網(wǎng)方式

    1553B總線作為航空電子系統(tǒng)中的關(guān)鍵通信協(xié)議,其組網(wǎng)方式直接影響系統(tǒng)的可靠性和實(shí)時(shí)性。本文將深入解析1553B總線的三種典型組網(wǎng)結(jié)構(gòu):?jiǎn)慰偩€結(jié)構(gòu)、雙冗余總線和多總線分層架構(gòu),并結(jié)合實(shí)際應(yīng)用場(chǎng)景分析
    的頭像 發(fā)表于 06-21 17:39 ?1980次閱讀
    1553B總線常見(jiàn)<b class='flag-5'>三種</b>組網(wǎng)<b class='flag-5'>方式</b>

    開(kāi)關(guān)電源三種控制模式:PWM/PFM/PSM

    PWM/PFM/PSM 三種控制模式的定義通常來(lái)說(shuō),開(kāi)關(guān)電源(DC-DC)三種最常見(jiàn)的調(diào)制方式分別為: 脈沖寬度調(diào)制(PWM) 脈沖頻率調(diào)制(PFM) 脈沖跨周期調(diào)制(PSM)
    發(fā)表于 06-09 16:11

    HarmonyOS基礎(chǔ)組件:Button三種類(lèi)型的使用

    中的Button相較于Android原生來(lái)說(shuō),功能比較豐富,擴(kuò)展性高,減少了開(kāi)發(fā)者的代碼數(shù)量,簡(jiǎn)化了使用方式。不僅可以自定義圓角還支持三種樣式。 常用屬性 名稱(chēng) 參數(shù)類(lèi)型 描述 type
    的頭像 發(fā)表于 06-09 15:48 ?2621次閱讀
    HarmonyOS基礎(chǔ)組件:Button<b class='flag-5'>三種</b>類(lèi)型的使用

    介紹三種常見(jiàn)的MySQL高可用方案

    在生產(chǎn)環(huán)境中,為了確保數(shù)據(jù)庫(kù)系統(tǒng)的連續(xù)可用性、降低故障恢復(fù)時(shí)間以及實(shí)現(xiàn)業(yè)務(wù)的無(wú)縫切換,高可用(High Availability, HA)方案至關(guān)重要。本文將詳細(xì)介紹三種常見(jiàn)的 MySQL 高可用
    的頭像 發(fā)表于 05-28 17:16 ?1257次閱讀

    信號(hào)隔離器三種供電方式的區(qū)別

    信號(hào)隔離器是一重要的信號(hào)隔離裝置,其供電方式主要有獨(dú)立供電、回路供電和輸出回路供電三種。以下是這三種供電方式的詳細(xì)區(qū)別: 一、獨(dú)立供電 1
    的頭像 發(fā)表于 04-17 16:23 ?1556次閱讀
    信號(hào)隔離器<b class='flag-5'>三種</b>供電<b class='flag-5'>方式</b>的區(qū)別

    redis三種集群方案詳解

    在Redis中提供的集群方案總共有三種(一般一個(gè)redis節(jié)點(diǎn)不超過(guò)10G內(nèi)存)。
    的頭像 發(fā)表于 03-31 10:46 ?1541次閱讀
    redis<b class='flag-5'>三種</b>集群方案詳解

    CMOS,Bipolar,F(xiàn)ET這三種工藝的優(yōu)缺點(diǎn)是什么?

    在我用photodiode工具選型I/V放大電路的時(shí)候,系統(tǒng)給我推薦了AD8655用于I/V,此芯片為CMOS工藝 但是查閱資料很多都是用FET工藝的芯片,所以請(qǐng)教下用于光電信號(hào)放大轉(zhuǎn)換(主要考慮信噪比和帶寬)一般我們用哪種工藝的芯片, CMOS,Bipolar,F(xiàn)ET這三種工藝的優(yōu)缺點(diǎn)是什么?
    發(fā)表于 03-25 06:23

    GaN、超級(jí)SI、SiC這三種MOS器件的用途區(qū)別

    如果想要說(shuō)明白GaN、超級(jí)SI、SiC這三種MOS器件的用途區(qū)別,首先要做的是搞清楚這三種功率器件的特性,然后再根據(jù)材料特性分析具體應(yīng)用。
    的頭像 發(fā)表于 03-14 18:05 ?2737次閱讀

    FOC中的三種電流采樣方式,你真的會(huì)選擇嗎?(可下載)

    的基礎(chǔ),用一句話來(lái)形容就是“基礎(chǔ)不對(duì),努力白費(fèi)”,由此可見(jiàn)電流采樣在整 個(gè) FOC 算法中的作用電流采樣的方式一般分為電阻、雙電阻、單電阻,這三種采樣方式都有其
    發(fā)表于 03-12 15:04 ?4次下載