小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

利用代碼度量值來衡量代碼質(zhì)量

 東北十三少 2022-11-11 發(fā)布于四川

要衡量代碼質(zhì)量的好壞,不能僅憑個(gè)人感覺,需要有數(shù)據(jù)支撐。代碼度量就是一系列可以衡量代碼質(zhì)量的數(shù)據(jù)。

代碼度量是一組軟件度量值,使開發(fā)人員可以更好地了解他們的哪些代碼需要返工或進(jìn)一步測試。利用代碼度量,開發(fā)人員可以了解代碼中的類和/或方法的質(zhì)量水平,是否需要返工或進(jìn)行測試。

微軟定義的代碼度量包括可維護(hù)性指數(shù)、圈復(fù)雜度、繼承深度、類耦合和代碼行數(shù)等5個(gè)測量項(xiàng),Visual Studio 提供了這5個(gè)測量項(xiàng)的度量工具。

  • 可維護(hù)性指數(shù)

可維護(hù)性指數(shù)表示維護(hù)代碼的相對容易度,它通過計(jì)算Halstead Volume、圈復(fù)雜度和代碼的行數(shù)來獲得,結(jié)果是一個(gè)介于0和100之間的指數(shù)值,該值越大表示可維護(hù)性越好??删S護(hù)性指數(shù)介于20和100之間,表示代碼的可維護(hù)性良好;介于10和19之間,表示代碼的可維護(hù)性中等;介于0和9之間的等級,表示可維護(hù)性低。

  • 圈復(fù)雜度

圈復(fù)雜度用于衡量代碼在結(jié)構(gòu)上的復(fù)雜程度。它通過計(jì)算程序流中的不同代碼路徑的數(shù)目來獲得。圈復(fù)雜度高的程序需要更多單元測試才能實(shí)現(xiàn)良好的覆蓋率,并且不容易維護(hù)。

  • 繼承深度

繼承深度指明擴(kuò)展到類層次結(jié)構(gòu)的根的類定義的數(shù)目。層次結(jié)構(gòu)越深,則越難了解特定方法和字段是在何處定義或/和重新定義的。它是通過計(jì)算繼承樹中從0開始的類型之上的類型數(shù)目(不包括接口)來獲得的。

  • 類耦合

類耦合是指一個(gè)類與其他類的耦合程度,它通過參數(shù)、局部變量、返回類型、方法調(diào)用、泛型或模板實(shí)例化、基類、接口實(shí)現(xiàn)、在外部類型上定義的字段以及屬性修飾來衡量。耦合較高表示類與類之間存在過多依存關(guān)系,使得設(shè)計(jì)難以重用和維護(hù)。

  • 代碼的行數(shù)

這里的代碼行數(shù)是代碼的大概行數(shù),并不是確切行數(shù)。計(jì)算代碼行數(shù)時(shí)不包括空白、注釋、括號及成員、類型和命名空間的聲明等行數(shù)。代碼行數(shù)過高的類或方法表示它們執(zhí)行過多的工作,應(yīng)予以拆分。否則,它們可能難以維護(hù)。

為了使用這些代碼度量值,我們需要建立一個(gè)決策標(biāo)準(zhǔn),比如當(dāng)可維護(hù)性指數(shù)大于20時(shí),表明代碼質(zhì)量差,必須進(jìn)行重構(gòu),這樣當(dāng)我們通過Visual Studio工具獲取以上代碼度量值后,就可以依據(jù)這個(gè)決策標(biāo)準(zhǔn)判定代碼質(zhì)量的好壞。

這正是:

代碼質(zhì)量好與壞,可用數(shù)據(jù)來衡量

五個(gè)代碼度量值,可以方便使用起

參考書目:測試有道——微軟測試技術(shù)心得,作者:梁博 許珊 徐歆愷,出版社:電子工業(yè)出版社

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多