1. 程式人生 > >C#靜態程式碼檢查工具StyleCode -- 初探

C#靜態程式碼檢查工具StyleCode -- 初探

最近我們Advent Data Service (ADS) 在專案上需要按照程式碼規範進行程式碼的編寫工作,以方便將來程式碼的閱讀與維護。

但是人工檢查起來容易遺漏或者格式不統一, ReSharper又是收費的,而且費用不菲。

於是美國的同事推薦了我們一款開源工具 StyleCop,我想無論是對公司專案還是個人的專案,都是有所幫助的,所以想寫下來與大家分享。

  • 現在最新的版本是 4.7.50,這是一個Alpah版本,支援Visual Studio 2015 (暫時不支援C# 6.0的語法)

 

  • StyleCop有兩種安裝方式
    • 直接在官網下載msi安裝程式,雙擊安裝
    • 在Visual Studio中,Tools --> Extensions and Updates… --> Extensions and Updates… --> Online --> 搜尋stylecop,找到Visual StyleCop並安裝

 

  • 安裝完成之後,開啟Visual Studio並開啟一個專案,右鍵選擇一個Project,會發現多了三個選項

 

  • Run StyleCop與Run StyleCop(Rescan All)會審查已有程式碼,並且在Error List中顯示程式碼中不符合規範的Warning

第一個圖是執行了Run StyleCop的Error List, 第二個圖是執行了Build的Error List

   

  • StyleCop Setting:在實際專案中,可能現有的規則並不適用於我們的專案,需要我們自己通過StyleCop Setting進行配置

 

以上都是StyleCop的基本功能,希望能對大家有所幫助,也歡迎大家進行交流討論。

Tips: 在Visual Studio中,規範化C#專案程式碼格式的快捷鍵是Ctrl + k,再按一下Ctrl + d。在編寫完程式碼後,按下這個組合,程式碼就會規規矩矩的排列了☺


相關推薦

C#靜態程式碼檢查工具StyleCode -- 初探

最近我們Advent Data Service (ADS) 在專案上需要按照程式碼規範進行程式碼的編寫工作,以方便將來程式碼的閱讀與維護。 但是人工檢查起來容易遺漏或者格式不統一, ReSharper又是收費的,而且費用不菲。 於是美國的同事推薦了我們一款開源工

C++效能系列之靜態程式碼檢查工具介紹(一)

FxCop Integrator允許將獨立的FxCop(1.36或10.0)和Code Metrics PowerTool 10.0整合到VS2010中。 最新版本(2.0.0 RTW)包含以下新功能: 支援使用程式碼度量PowerTool的計算程式碼

Android靜態程式碼檢查工具Lint

轉自 https://blog.csdn.net/u012317510/article/details/78221218   前言 Android提供了一個叫做Lint的靜態程式碼檢查工具。Lint工具可以幫助你檢查可能影響應用質量和效能的程式碼問題。該工具會報告檢測到的每個問

Cppcheck 1 54 C/C++靜態程式碼分析工具

64-bit portabilityCheck if there is 64-bit portability issues:assign address to/from int/longAuto VariablesA pointer to a variable is only valid as long as

靜態程式碼檢查工具簡介

靜態程式碼檢查工具簡介 在 Java 軟體開發過程中,開發團隊往往要花費大量的時間和精力發現並修改程式碼缺陷。傳統的程式碼複審、同行評審,通過人工方式來檢查缺陷仍然是一件耗時耗力的事情。Java 靜態程式碼分析(static code analysis)工具能夠在程式碼構建過程中幫助開發人員快速

JS 的靜態程式碼檢查工具 Flow

無意中看到了VUE的原始碼,沒看幾行就被看蒙了。 Vue: Class<Component> const vm: Component = this   想了一下,查了查相關資料,是不是ES 6的新語法。 確實不是。 是Facebook開源的JS靜態檢查工具用法。

靜態程式碼檢查工具 cppcheck 的使用

      CppCheck是一個C/C++程式碼缺陷靜態檢查工具。不同於C/C++編譯器及其它分析工具,CppCheck只檢查編譯器檢查不出來的bug,不檢查語法錯誤。所謂靜態程式碼檢查就是使用一個工具檢查我們寫的程式碼是否安全和健壯,是否有隱藏的問題。 比如無意間寫了這

5個靜態程式碼檢查工具

FlexeLint 支援windows,linux http://www.gimpel.com/html/flex.htm pclint 只支援 windows http://www.gimpel.com/html/pcl.htm splint 只支援c程式碼的檔案 c

c++重複程式碼檢查工具

以前一直用simian,對C++支援比較好。但最近的新筆記本遇到問題 Errror GB2312,折騰了兩天沒搞定。 就換了PMD的CPD工具,很好用,還有一個簡單的GUI介面,對於臨時手工檢查的情況那是相當適合啊 可以從這裡下,https://pmd.github.io/

PVS-Studio C/C++/C++11 靜態程式碼分析工具

  靜態程式碼分析儀是一種檢測程式碼缺陷、分析對比 商業程式碼的工具,它分析原始碼和它生成的目標 檔案,但並不實際執行原始碼。應用於對安全性、 穩定性要求很高的領域,比如航天、國防、工業 控制、金融等就需要嚴格的程式碼分析工具。PVS-Studio 能發現程式碼中一些潛

PVS-Studio C/C++/C++11 靜態程式碼分析工具

靜態程式碼分析儀是一種檢測程式碼缺陷、分析對比 商業程式碼的工具,它分析原始碼和它生成的目標 檔案,但並不實際執行原始碼。應用於對安全性、 穩定性要求很高的領域,比如航天、國防、工業 控制、金融等就需要嚴格的程式碼分析工具。PVS-Studio 能發現程式碼中一些潛在

靜態程式碼分析工具大比拼(C++篇)

1引言 靜態程式碼分析是指無需執行被測程式碼,通過詞法分析、語法分析、控制流、資料流分析等技術對程式程式碼進行掃描,找出程式碼隱藏的錯誤和缺陷,如引數不匹配,有歧義的巢狀語句,錯誤的遞迴,非法計算,可能出現的空指標引用等等。統計證明,在整個軟體開發生命週期中,30% 至

OC靜態程式碼檢查實戰

此文已由作者楊曉授權網易雲社群釋出。 歡迎訪問網易雲社群,瞭解更多網易技術產品運營經驗。 在Mac OS系統上,採用Xcodebuild Analyze命令和OClint工具,對iOS專案進行靜態程式碼檢查,輸出視覺化結果。然後將專案持續整合至CI平臺,並使用PMD外掛進行錯誤統計的展示。對

PHP工具箱:PHPStan —— PHP 靜態程式碼分析工具

PHPStan:無需寫測試就能找到程式碼中的 Bug 每當我看到開發人員從 Java 或 C# 等編譯語言切換到 PHP 這樣的解釋語言時解放了生產力後感到很高興。除了這些常規的執行模型(發起、處理請求和結束請求)和更短的反饋環(無需等待編譯器)外,還有一個能解決開發人員日常問題的開源框架

c++builder 程式碼格式化工具 AStyle

C++ Builder 程式碼自動格式化 2016年08月22日 08:43:04 my98800 閱讀數:997 C++ Builder 原始碼自動格式化   經常除錯修改程式碼,手動調整縮排很麻煩,有其是巢狀較多的時候還比較容易出錯,C++ Buil

靜態程式碼分析工具清單:開源篇(各語言)

本文是一個靜態程式碼分析工具的清單,共有26個工具。包括4個.NET工具、2個Ada工具、7個C++工具、4個Java工具、2個JavaScript工具、1個Opa工具、2個Packaging工具、3個Perl工具、1個Python工具。 1.NET .NET Compiler Platfo

技術管理者---提升研發程式碼質量---程式碼檢查工具Sonar

本文是《技術管理者---提升研發程式碼質量》系列文章第二篇,第一篇整體介紹請看博文《技術管理者---提升研發程式碼質量---總體方法論》。本文重點講三部分內容:1)sonar是什麼,研發體系如何利用sonar提供程式碼質量;2)開發過程中如何使用Sonar保證程式碼質量;3)

c記憶體洩漏檢查工具---mtrace

    專案中出現記憶體洩漏是讓人很頭疼的事情,使用了vargrind效果不明顯,可能因為試用了libuv裡面有太多非同步處理,導致使用vargrind會出現段錯誤。後來發現mtrace,使用還是挺簡單的。     mtrace是gn

JS程式碼檢查工具ESLint

前面的話   ESLint是一個JavaScript程式碼靜態檢查工具,可以檢查JavaScript的語法錯誤,提示潛在的bug,可以有效提高程式碼質量,維持前端團隊高度一致的編碼風格。ESLint不但提供一些預設的規則,也提供使用者自定義規則來約束所寫的JavaScript程式碼。本文將詳細介紹ESLin

PHP靜態程式碼掃描工具PHPCheckStyle果真如此不靠譜嗎?

今天嘗試用了下PHPCheckStyle看看對PHP程式碼做靜態掃描效果如何,結果誤報率,,,摻不忍睹啊,是不是我哪裡用錯了?原始碼:<?php $first=$_GET["first"]; $value=strval($_GET["tainted"]); echo