Sky's blog

          我和我追逐的夢

          常用鏈接

          統計

          其他鏈接

          友情鏈接

          最新評論

          sonar 與 NOSONAR


              大家都知道sonar是個好東東,在有CI支持的情況下,使用好了可以非常好的控制代碼的質量,諸如代碼覆蓋率,代碼規則檢查等。 

              而解決violation的辦法,除了正統的修改代碼來滿足規則外,還有一個變通的方法, NOSONAR。這個標記本意是在一些特殊情況,有不得已的理由不得不違反規則,為了避免sonar繼續報錯而不得已做了一個"變通"。 

              NOSONAR本意雖好,但要是有人濫用,變通就會變成取巧,因為解決sonar violation的最簡單的方法,就是直接NOSONAR! 

              當問題很簡單時,一般人都會選擇正常的方式修改代碼,如果只是舉手之勞基本上還是能遵守規則的。但是當問題復雜時,或者說當解決問題不再是舉手之勞時,每個人都要受到NOSONAR的誘惑。而NOSONAR的底線在哪里?沒有人定義,沒有人檢測,自然不會每個人都堅守,NOSONAR的底線隨著一個一個的NOSONAR慢慢的在降低。退五十步的人,是沒有資格笑百步的。 

              返回到現實代碼中,不知道是大家都沒有頂住誘惑,還是說我們開啟的規則不大合理,總之越來越頻繁的在代碼中看到NOSONAR了,雖然還沒有到泛濫的地步,但是已經讓我有些不安了。簡單搜索了一下剛才讓我感覺到很多NOSONAR的project,結果是58個。 

              更糟糕的是,每個NOSONAR后面都不會帶有注釋說明為什么要NOSONAR,因此一個個飛舞的NOSONAR就變成了一個個謎團。想知道為什么要NOSONAR嗎?恩,你猜...... 

              我沒有辦法去檢查這個58個NOSONAR是不是都合理的,都站得住腳的。出于程序員的習慣,對于一切不可確認性都報以懷疑的眼光和質疑的姿態,我總覺得這58個NOSONAR讓我總是沒有底,每次我看到sonar上100%的規則檢測通過率時,我總是禁不住在心里浮現NOSONAR的字樣。 

              好吧,我承認,我是個心里有些陰暗的家伙...... 

          posted on 2010-11-22 11:04 sky ao 閱讀(3926) 評論(2)  編輯  收藏 所屬分類: project manager

          評論

          # re: sonar 與 NOSONAR 2010-11-23 00:16 leekiang

          做到是什么系統,如果是普通業務系統的話不至于吧  回復  更多評論   

          # re: sonar 與 NOSONAR 2010-11-24 04:48 LeoLiang

          Sonor是否可以配置規則,不允許(忽略)NOSONAR?  回復  更多評論   

          主站蜘蛛池模板: 朝阳区| 甘肃省| 泽库县| 铜陵市| 桑植县| 凤台县| 年辖:市辖区| 郴州市| 巨鹿县| 政和县| 东源县| 蕉岭县| 盐源县| 兴文县| 防城港市| 纳雍县| 芦山县| 高唐县| 拜泉县| 南开区| 麟游县| 巨野县| 武邑县| 玛沁县| 无棣县| 新和县| 明星| 开封县| 台中县| 晋江市| 清镇市| 肃南| 平度市| 北海市| 萨迦县| 天峻县| 天气| 和硕县| 银川市| 临沧市| 宜良县|