【代碼質量管理工具】-由sonar引發的思考

原文路徑:https://blog.csdn.net/luckystar689/article/details/53968102

----------------------------------------------------------------------------------------

之前,在看《笑傲江湖》的時候,郭德綱在給一對夫妻的表演做評審的時候,說了一句話讓我印象特別深刻,原話 我記不清了,大概的意思是:你們的表演很好,但是廢話很多,我講相聲的時候,如果去掉這句話,不會影響這個節目 的效果,OK,那就去掉這句話,一句廢話也不能多。

?

? ?這讓我想到了,我們最近在做的工作:修改由sonar測試出來的不規范代碼。也是同樣的道理,聲明一個永遠都不會用的變量,定義一個不會有其他方法調用的方法,無用的import等等~ ?去掉它,不會影響你的系統功能實現,加上它會占用空間,同時還會影響代碼閱讀的效果。

?

? ?我們有ITOO的代碼規范手冊,例如如何命名,注釋應該怎么寫之類的等的規范,但這只是很小的,很基礎的一部分。但是像sonar這樣檢測出來的規范,例如“.equals()”方法,要測試的value值要放在"."的左側;判斷list是否為空,用isEmpty,而不是直接用".size()"方法。我們之前寫的這種方法都沒有錯,只不過對比規范的代碼來說,我們寫的代碼安全性低,有潛在的安全隱患問題,效率低。

?

? ?sonar,雖然只是一個代碼檢測工具,但是它教會了我們如何寫高效優雅的代碼~

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/537900.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/537900.shtml
英文地址,請注明出處:http://en.pswp.cn/news/537900.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

php curl 模擬多線程,php利用curl 多線程 模擬 并發的詳解

php利用curl 多線程 模擬 并發的詳解發布于 2014-12-07 10:17:25 | 265 次閱讀 | 評論: 0 | 來源: 網友投遞PHP開源腳本語言PHP(外文名: Hypertext Preprocessor,中文名:“超文本預處理器”)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點&…

新版DAEMON Tools Lite打不開 bin 文件解決方法

DAEMON Tools Lite 支持打開 *.cue 解決方法很簡單:將*.bin 重命名為 *.cue 就可以打開

Linux集群架構(LVS DR模式搭建、keepalived + LVS)

為什么80%的碼農都做不了架構師?>>> LVS DR模式搭建 準備工作:三臺機器 分發器,也叫調度器(簡寫為dir):192.168.248.128 rs1 :192.168.248.129 rs2 : 192.168.248.130 vip : 192.16…

java手機狀態欄圓形圖標,android實現狀態欄添加圖標的函數實例

本文實例講述了android實現狀態欄添加圖標的函數。分享給大家供大家參考。具體如下:private void showNotification() {// 創建一個NotificationManager的引用NotificationManager notificationManager (NotificationManager)AutoFile.this.getSystemService(andro…

Windows下SVN回滾到舊版本(TortoiseSVN)

原文地址:https://www.cnblogs.com/tommy-huang/p/4729634.html ---------------------------------------- 當發現新提交的代碼有問題,然后想將某個舊的版本作為最新的版本時,可以使用回滾, 操作步驟如下: 1. 簽出…

看懂架構設計中的服務隔離

前言 我們在做系統架構設計的時候,經常離不開的一個話題就是進行服務的隔離設計。 那什么是「服務隔離」呢? 顧名思義,它是指將系統按照一定的原則劃分為若干個服務模塊,各個模塊之間相對獨立,無強依賴。當有故障發生時…

2018最新蘋果APP上架App Store流程(超詳細)

內容很豐富,點擊查看博文 https://blog.csdn.net/xxw888/article/details/73618837/

[五] JavaIO之InputStream OutputStream簡介 方法列表說明

InputStream 和 OutputStream 對于字節流的輸入和輸出 是作為協議的存在 所以有必要了解下這兩個類提供出來的基本約定 這兩個類是抽象類,而且基本上沒什么實現,都是依賴于子類具體的去實現 但是他是對于其子類 協議綱領一般的存在 了解清楚每一個方法含義,對于后續具體的子類將…

Mysql yum 安裝后,一些重要的文件路徑

默認配置文件路徑: 配置文件:/etc/my.cnf 日志文件:/var/log//var/log/mysqld.log 服務啟動腳本:/usr/lib/systemd/system/mysqld.service socket文件:/var/run/mysqld/mysqld.pid #(a)數據庫目錄 /var/lib/mysql…

mysql雙機熱備 配置文件,MYSQL 雙機熱備配置手冊()

[原創] MYSQL 雙機熱備配置手冊[原創]http://www.chinaunix.net 作者:squall1 發表于:2007-07-23 19:01:43【發表評論】【查看原文】【存儲備份之家討論區】【關閉】作者:CU-squall發表于:2005年4月18日 8:21 可以不經作者同意自由傳播&…

[轉]資本經營董事長班告訴你:不只企業有商業模式,個人商業價值更重要

本文轉自:http://blog.sina.com.cn/s/blog_181b5b47e0102xz4v.html 東方財智-資本經營董事長班>>> 經營者如何輕松駕馭金融工具為企業發展加速、升級互聯網工具實現品牌營銷裂變、利用管理工具優化公司內部結構,把握前沿視角,實現快…

CentOS 7添加開機啟動服務腳本

原文路徑:https://blog.csdn.net/wang123459/article/details/79063703 --------------------------------------------------------- 一、添加開機自啟服務 在CentOS 7中添加開機自啟服務非常方便,只需要兩條命令(以Jenkins為例): system…

php 彩票系統,hsyl12141511 一套完整的PHP版彩票系統 - 下載 - 搜珍網

文件名大小更新時間BOEKJ02017-12-14BOEKJ\.idea02017-12-13BOEKJ\.idea\BOEKJ.iml2812017-04-28BOEKJ\.idea\modules.xml2622017-04-28BOEKJ\.idea\workspace.xml100272017-04-28BOEKJ\String-ext.js10402015-05-30BOEKJ\TianHeng.exe230402015-05-05BOEKJ\config.js309232017…

CPR認證-建材CE認證-305/2011/EU

建材CPR認證 - Regulation (EU) No 305/2011  2011年3月,歐盟頒布了新建筑產品法規RETULATION (EU) No 305/2011 – CPR,并通告了新法規于2013年7月進入強制執行,取代了老CPD指令89/106/EEC。  新的建材CPR認證也是…

python支持復數類型以下什么說法是錯誤的,【Python】專項練習題(1)

1.python代碼如下:foo [1,2]foo1 foofoo.append(3)A.foo 值為[1,2]B.foo 值為[1,2,3]C.foo1 值為[1,2]D.foo1 值為[1,2,3]答案:B D鏈接:https://www.nowcoder.com/profile/153165401/myFollowings/detail/20055659來源:牛客網2.下列程序打印…

ios10不能定位 window.navigator.geolocation.getCurrentPosition(定位第一節)

原文連接: https://blog.csdn.net/michael_ouyang/article/details/54137709 --------------------------------------------------------- 問題分析: 目前由于許多蘋果用戶都升級到了iOS系統,蘋果的iOS 10已經正式對外推送,…

php網站無法顯示,php – 在UTF-8網站上無法正確顯示的字符

我已經完成了我能想到的一切,但是在這個網頁上沒有正確顯示特殊字符.例如,在數據庫中它是:但在網站上它是:Nouveaux R�alistes這是我檢查過的一切……數據庫設置為UTF-8:該頁面是用NetBeans編寫的,文檔編碼設置為UTF-8&#xff1a…

ios如何獲取gps坐標(定位第二節)

原文連接: https://blog.csdn.net/michael_ouyang/article/details/54378338 -------------------------------------------------------------------- 在上一篇文章,解決ios 10不能定位的問題,把navigator.geolocation.getCurrentPosition…

java并發編程——線程池的工作原理與源碼解讀

2019獨角獸企業重金招聘Python工程師標準>>> 線程池的簡單介紹 基于多核CPU的發展,使得多線程開發日趨流行。然而線程的創建和銷毀,都涉及到系統調用,比較消耗系統資源,所以就引入了線程池技術,避免頻繁的線…