变态重口极致另类在线-波多久久夜色精品国产-波多野结衣在线观看一区-波多野结衣在线观看一区二区-污污的网站免费阅读-污污视频网址

東坡下載:內容最豐富最安全的下載站!

首頁最新資訊 → 如何評價軟件寫的好還是壞?

如何評價軟件寫的好還是壞?

相關文章發表評論 來源:本站時間:2012/1/16 16:35:13字體大。A-A+

作者:點擊:181次評論:0次標簽:

軟件自身是一種固化的思維,因此從本質上來看,軟件是不可度量的。

但這并不意味著軟件不需要度量,而只是說軟件中的度量大多都有一定限度。

應用各種度量數據的時候一旦跨過這種限度,結果就會適得其反。

 

在這篇文章里,我們將考查一下現有的,對軟件進行度量的方法(注意:這篇里主要考察別人的方法,不是我自己的)。

可能不全面,不足的地方歡迎大家進行補充。

對軟件“直觀可見的質量屬性”的度量比較簡單,比如:Bug率,性能等,這里就不提了。

這里主要關注的是軟件的內在的,不直觀可見的質量屬性。

 

  • 圈復雜度

 

圈復雜度主要用于度量函數或方法,從《代碼大全》中可以找到圈復雜度的描述。

關于圈復雜度:Tom McCabe曾經建議使用下面的方法來度量復雜度。在這一方法中為了計算復雜度首先要計算子程序中的決策點(decision points),規則如下:

 

    1. 從函數第一行一致往下通過程序
    2.  一旦遇到以下關鍵字或者同類的詞就加1:if,while,repeat,for,and,or
    3.  給case語句中的每一種情況加1                           --Steve McConell 《代碼大全》

 

很多靜態分析工具都直接提供對圈復雜度的度量,而圈復雜度本身歧義性很小,是非常難得的指標,高于15的代碼基本很難看懂。

但圈復雜度更適合用于度量編碼的結果,對高層設計則不太適用。

 

  • 響應集

 

  響應集是指類的各個方法直接調用的函數數目。響應集無疑的應該盡可能的小,根據得墨忒耳法則:某個對象的任何方法都應該只調用屬于以下情形的方法。

         

class Demeter
{
private:
A* a;
int func();
public:
//...
void example(B& b);
void Demeter::example(B& b)
{
C c;
int f = func(); //<---- 類自己的方法
b.invert(); //<----傳入參數的方法,當然參數本身也可能是函數
a = new A();
a->setActive();// <---創建的對象所擁有的方法
c.print(); // <---創建的,并歸自己所有的對象的方法
}
};



         ---摘自《程序員修煉之道》

 

  • 關系內聚性(H)

 

在度量包時可以用包內部類的數目除以包內類的總數,其比值用來表示包得內聚性。如果用R表示包內部得類關系數目,用N表示包內類總數。那么:

H = (R+1)/N

  • 不穩定性(I)

不穩定性由輸入耦合度(Ca)與輸出耦合度(Ce)計算而來。

包得輸入耦合度是指處于包外部,但依賴于包內類的數目。

包得輸出耦合度是指包內部的依賴于包外部類的類數目。

這樣I = Ce / (Ca+ Ce)

 

  • 抽象性(A)

 

包的抽象性用抽象類的數目和包中所有類的數目進行計算。

假如說包中類的總數是Nc, 抽象類的數目是Na ,那么抽象度A = Na/Nc

 

關系內聚性(H),不穩定性(H),抽象性(H)的進一步說明,請參見《敏捷軟件開發:原則,模式與實踐》一書。

 

這些度量指標無疑是有意義的,都可以用來評價軟件寫的好還是壞,但卻不解決這樣一個問題:
如果一個方案在關系內聚性(H),不穩定性(H),抽象性(H)上都有好的表現,復雜度有沒有提高?如果說復雜度因此而提高了,那么這種額外支出的復雜度值不值得?

如果我們認為復雜度是軟件的根本問題,那么在滿足需求的前提下,使軟件簡單化就是最關鍵的使命(比靈活性等重要)。既如此,究竟應該如何度量軟件的復雜度呢?

這是一個需要進一步展開的話題,我完善后會進一步和大家分享。

相關評論

閱讀本文后您有什么感想? 已有 人給出評價!

  • 2791 喜歡喜歡
  • 2101 頂
  • 800 難過難過
  • 1219 囧
  • 4049 圍觀圍觀
  • 5602 無聊無聊
熱門評論
最新評論
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字數: 0/500 (您的評論需要經過審核才能顯示)

本類常用軟件

主站蜘蛛池模板: 夜夜天天操 | 国产一级视频久久 | 欧美a网站| 黄色香蕉视频 | 亚洲午夜18 | 亚洲日本va午夜中文字幕一区 | 免费人欧美成又黄又爽的视频 | 在线观看免费视频黄 | 午夜精品在线视频 | 精品一区二区在线欧美日韩 | 九九夜夜 | 亚洲va韩国va欧美va天堂 | 欧美激情免费看 | 国产成人精品午夜二三区 | 91高素质城中村在线观看 | 国产日韩欧美中文字幕 | 在线观看嗯啊成人动作片 | 国产成人免费影片在线观看 | 97久久人人做人人爽人人澡 | 欧美一级高清在线观看 | 亚洲欧美日韩网站 | 午夜免费视频观看在线播放 | japan孕妇孕交 | 日韩黄在线观看免费视频 | 欧美国产日韩一区 | 人人澡人人人人夜夜爽 | 国产视频99| 一区二区三区四区日韩 | 欧美巨大xxxx做受孕妇视频 | 手机在线成人精品视频网 | 无遮挡h纯内动漫在线观看 无遮挡1000部拍拍拍免费观看 | 欧洲在线一区 | 伊人热人久久中文字幕 | 久久精品a一国产成人免费网站 | 欧美在线免费 | 国产日韩欧美精品在线 | 男人把女人靠到爽痛视频 | 国产精品成人免费观看 | 亚洲综合激情小说 | 国产成人18黄禁网站免费观看 | 免费看黄在线观看 |