靜態(tài)代碼分析(Static Code Analysis)

靜態(tài)代碼分析簡介

程序靜態(tài)分析(Static Code Analysis)是指在不運行代碼的方式下昆箕,通過詞法分析語法分析骆姐、控制流分析數(shù)據(jù)流分析等技術(shù)對程序代碼進行掃描,驗證代碼是否滿足規(guī)范性捻浦、安全性钠四、可靠性盗扒、可維護性等指標的一種代碼分析技術(shù)。目前靜態(tài)分析技術(shù)向模擬執(zhí)行的技術(shù)發(fā)展以能夠發(fā)現(xiàn)更多傳統(tǒng)意義上動態(tài)測試才能發(fā)現(xiàn)的缺陷缀去,例如符號執(zhí)行、抽象解釋褥影、值依賴分析等等并采用數(shù)學(xué)約束求解工具進行路徑約減或者可達性分析以減少誤報增加效率。目前的靜態(tài)分析工具,無論從科研角度還是實用性角度還有很大的提高余地,國際最好分析工具誤報率在5-10%之間注暗,能夠報出的缺陷種類也僅有幾百種宠页。
動態(tài)分析方法不同的是,靜態(tài)分析方法不需要執(zhí)行程序举户,只需要自動掃描代碼烤宙,所以,靜待代碼分析可能會誤報程序缺陷供填。

百度百科

個人理解可將代碼省查所做的工作總結(jié)為兩點

  • 如何定義代碼缺陷
  • 如何以靜態(tài)的方式分析代碼的缺陷拐云,根據(jù)規(guī)則提取缺陷信息

提取缺陷信息方法
詞法分析,語法分析近她,語義分析叉瘩,控制流分析,數(shù)據(jù)流分析粘捎,污點分析薇缅,無效代碼分析等。


CppDepend簡介

通常攒磨,我們都會利用現(xiàn)有的集成工具去分析代碼捅暴。在此,介紹一款分析C/C++的靜態(tài)代碼分析工具——CppDepend咧纠。
CppDepend的代碼規(guī)則為LINQ查詢,它可以在數(shù)秒內(nèi)構(gòu)建一個規(guī)則泻骤。并且漆羔,這些規(guī)則包含了技術(shù)債務(wù)評估
默認的規(guī)則集包括了超過100條規(guī)則狱掂,諸如entangled code演痒,dead-code,API breaking changes和bad OOP usage這樣的代碼缺陷趋惨,都可以通過默認的規(guī)則集分析鸟顺。


CppDepend功能

運行CppDepend,其主界面如下圖所示器虾。


CppDepend 主界面

CppDepend主要功能如下:


Next:CppDepend功能詳細介紹

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末犁苏,一起剝皮案震驚了整個濱河市硬萍,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌围详,老刑警劉巖朴乖,帶你破解...
    沈念sama閱讀 211,423評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異助赞,居然都是意外死亡买羞,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,147評論 2 385
  • 文/潘曉璐 我一進店門雹食,熙熙樓的掌柜王于貴愁眉苦臉地迎上來哩都,“玉大人,你說我怎么就攤上這事婉徘∧叮” “怎么了咐汞?”我有些...
    開封第一講書人閱讀 157,019評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長儒鹿。 經(jīng)常有香客問我化撕,道長,這世上最難降的妖魔是什么约炎? 我笑而不...
    開封第一講書人閱讀 56,443評論 1 283
  • 正文 為了忘掉前任植阴,我火速辦了婚禮,結(jié)果婚禮上圾浅,老公的妹妹穿的比我還像新娘掠手。我一直安慰自己,他們只是感情好狸捕,可當我...
    茶點故事閱讀 65,535評論 6 385
  • 文/花漫 我一把揭開白布喷鸽。 她就那樣靜靜地躺著,像睡著了一般灸拍。 火紅的嫁衣襯著肌膚如雪做祝。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,798評論 1 290
  • 那天鸡岗,我揣著相機與錄音混槐,去河邊找鬼。 笑死轩性,一個胖子當著我的面吹牛声登,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播揣苏,決...
    沈念sama閱讀 38,941評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼悯嗓,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了舒岸?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,704評論 0 266
  • 序言:老撾萬榮一對情侶失蹤芦圾,失蹤者是張志新(化名)和其女友劉穎蛾派,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體个少,經(jīng)...
    沈念sama閱讀 44,152評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡洪乍,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,494評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了夜焦。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片壳澳。...
    茶點故事閱讀 38,629評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖茫经,靈堂內(nèi)的尸體忽然破棺而出巷波,到底是詐尸還是另有隱情萎津,我是刑警寧澤,帶...
    沈念sama閱讀 34,295評論 4 329
  • 正文 年R本政府宣布抹镊,位于F島的核電站锉屈,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏垮耳。R本人自食惡果不足惜颈渊,卻給世界環(huán)境...
    茶點故事閱讀 39,901評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望终佛。 院中可真熱鬧俊嗽,春花似錦、人聲如沸铃彰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽豌研。三九已至妹田,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間鹃共,已是汗流浹背鬼佣。 一陣腳步聲響...
    開封第一講書人閱讀 31,978評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留霜浴,地道東北人晶衷。 一個月前我還...
    沈念sama閱讀 46,333評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像阴孟,于是被迫代替她去往敵國和親晌纫。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,499評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 簡介 本文是一個靜態(tài)代碼分析工具的清單永丝,但是為公司產(chǎn)品锹漱,需要付費使用。共有37個公司慕嚷,有些公司包含多個工具哥牍。其中2...
    煙花詩人閱讀 3,568評論 0 0
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,761評論 25 707
  • Awesome DotNet,這又是一個 Awesome XXX 系列的資源整理喝检,由 quozd 發(fā)起和維護嗅辣。內(nèi)容...
    小明yz閱讀 3,686評論 0 47
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)挠说,斷路器澡谭,智...
    卡卡羅2017閱讀 134,629評論 18 139
  • 容易大哭或大笑的人蛙奖,常被認為是不夠成熟或是孩子氣潘酗,但有醫(yī)生卻認為這才是健康之道。當你大笑或大哭結(jié)束時外永,是否都覺得身...
    老陳說健康閱讀 1,281評論 0 0