C#最佳工具集合:IDE、分析、自動化工具等


原文:《The Ultimate List of C# Tools: IDEs, Profilers, Automation Tools, and More》https://stackify.com/best-csharp-tools/web

翻譯:Sweet Tang正則表達式

C#編程的最佳工具備如下幾類:

  • IDE數據庫

  • VS擴展編程

  • 編譯器、編輯器和序列化瀏覽器

  • 反編譯和代碼轉換工具安全

  • 構建自動化和合並工具服務器

  • 版本控制網絡

  • 測試工具和VS擴展架構

  • 性能分析框架

  • APM

  • 部署自動化

  • 容器

 

 

 

1IDE

 

1. Visual Studio Code

 


 

Visual Studio Code是C#開發人員最受歡迎的代碼編輯器。您可使用Visual Studio Code與C#擴展功能實現強大的編輯功能,並徹底支持C# IntelliSense和調試。

 

主要特徵:

  • 優秀的自動完成與上下文感知提示

  • 內置Git集成,實現更好的版本控制

  • 大量的擴展進一步加強平臺

 

2. MonoDevelo

 

由Xamarin開發,MonoDevelop具備許多與VS Code類似的功能,也是跨平臺的。使用MonoDevelop,您能夠在Windows,Linux和Mac OS X上快速編寫桌面和Web應用程序。

 

主要特徵:

  • 標準功能,如代碼提示和調試

  • 還配有Unity,一個遊戲引擎,能夠爲視頻遊戲等應用程序實現高級C#編程

  • 支持C#代碼提示

  • 代碼模板和代碼摺疊

  • 多語言支持

 

3. SharpDevelop

 

 

 

一個用於C#、VB.net和Boo項目的免費開源IDE,#develop(SharpDevelop)是VS Code的輕量級替代品。

 

主要特徵:

  • Visual Studio提供的一般功能,包括代碼編輯,編譯和調試

  • 一些高級功能包括上下文操做和後臺語法檢查

 

4. Rider

 

 

Jet Brains產品套件中一個成員,Rider是基於IntelliJ平臺和ReSharper的跨平臺.NET IDE。

 

主要特徵:

  • 與其餘JetBrains產品無縫集成

  • 2000多種代碼檢查

  • 上下文操做

  • 支持Unity遊戲引擎

  • 支持.NET Framework和.NET Core

 
 
2Visual Studio 擴展

5. Productivity Power Tools 2017

 


由Microsoft提供,這是一個很好的擴展,以加快Visual Studio的開發。

 

主要特徵:

  • 中間點擊滾動

  • 快速查找

  • 解決方案錯誤可視化

  • 直觀的界面

  • 其它版本可用於舊版Visual Studio版本

 

6. jQuery Code Snippets

 


簡化jQuery框架編碼,jQuery Code Snippets爲Visual Studio 2012,2013,2015和2017提供了超過130個代碼段。

 

主要特徵:

  • 130多種jQuery代碼片斷

  • 支持全部版本的Visual Studio

  • 對於那些剛入門jQuery開發人員來講很是棒,可使用這個擴展來學習jQuery的門道

 

7. CodeMaid

 


CodeMaid是一個開源的VS擴展,能夠幫助您清理和簡化除C#以外各類支持語言的代碼。

 

主要特徵:

  • 從代碼中刪除沒必要要的字符,如空格

  • 代碼整理

  • 使用樹型結構視圖輕鬆瀏覽代碼

  • 支持多種語言

  • 註釋格式

 

8. Refactoring Essentials

 


使用Refactoring Essentials,一個具備內置的C#和VB代碼轉換器的VS擴展,使您的C#代碼更容易閱讀和修復常見錯誤。

 

主要特徵:

  • 修復常見的錯字和編碼錯誤

  • 在代碼庫中找到每種不匹配的樣式

  • 開源代碼,您能夠擴展或改進它

 

 

 

3編譯器、編輯器和序列化

 

9. SlickEdit

 


SlickEdit是一個代碼編輯工具,能夠提升生產力並提升代碼質量。它是一個跨平臺的代碼編輯器,可在九個平臺上支持超過60種語言(包括C#)。

 

主要特徵:

  • 編譯並調試您的代碼,顯示全部錯誤以便行快速訪問

  • 能夠處理很是大的代碼文件,大到2TB

  • 語法擴展和縮進

  • 按鍵模擬

  • 備份歷史記錄

  • 多個光標和選擇

  • 標準和專業版可用於知足您的需求

 

10. Rextester

 


Rextester(表明正則表達式測試器)是C#的簡單在線編譯器。

 

主要特徵:

  • 每段代碼運行CPU時間最多爲5秒

  • 每段代碼最多能夠佔用150MB內存

  • 代碼在應用程序域中運行,具備基本的執行、反射、線程控制和web權限

 

11. C# Pad

 


C# Pad是C#的一個方便的REPL工具。使用起來很簡單:輸入代碼,點擊「Go」執行。

 

主要特徵:

  • 在線快速測試C#代碼

  • 包括代碼自動完成

  • 可嵌入其它網站

 

12. Jdoodle

 


另外一個輕量級代碼編譯器,Jdoodle支持63種語言(包括C#),並容許您保存程序並與其餘人共享URL。您能夠將Jdoodle中建立的代碼嵌入到您的網站,用於協做,在線訪問等。

 

主要特徵:

  • 在線快速測試一小段代碼,而無需打開IDE

  • 輕鬆地與他人分享您的代碼

  • API即將推出

 

13. .NET Fiddle

 


C#的一個流行的調試工具,.NET Fiddle的靈感來自於JSFiddle.net,旨在快速,簡單的代碼測試,而無需打開Visual Studio並建立一個新的項目。

 

主要特徵:

  • 讓您編寫,保存和協做C#代碼

  • 支持4種項目類型:控制檯,Script,MVC,Nancy

  • 還支持VB.NET和F#

 

14. Telerik Fiddler

 


Telerik Fiddler容許您在線執行代碼。它提供了一系列功能,包括Web調試、Web會話操做、性能測試、安全測試等。

 

主要特徵:

  • 運行一系列測試,如性能測試、Web調試和安全測試

  • FiddlerCore可以讓您將Fiddler應用程序嵌入到您本身的應用程序中,以便您能夠避免整個Fiddler UI,還能夠得到Fiddler的全部功能

 

15. Json.NET

 


Json.NET是一個流行的JSON框架。使用它,您能夠在任何地方(Windows,Windows Store,Windows Phone,Mono和Xamarin)運行它時,建立、解析、查詢和修改JSON,在XML和JSON之間進行轉換。

 

主要特徵:

  • 對.NET對象進行序列化和反序列化

  • 查詢JSON數據庫

  • 使用JObject,JArray和JValue對象建立、解析、查詢和修改JSON

  • 開源

 

16. Scriptcs

 


一個簡單的在線編輯器,編寫和執行C#代碼,Scriptcs被設計爲很是簡單,以免使用過於複雜的工具和解決方案阻礙您的工做效率。

 

主要特徵:

  • 避免完整IDE的臃腫

  • 爲您提供簡單的C#編碼任務的靈活性和速度

  • 管理與NuGet的依賴關係

  • 優雅的C#腳本語法

 

 

 

4反編譯和代碼轉換工具

 

17. dotPeek

 


dotPeek容許您將.NET程序集反編譯爲C#。dotBeek是JetBrains提供的免費獨立工具,基於ReSharper捆綁的反編譯器。

 

主要特徵:

  • 強大的搜索和導航功能

  • 將任何.NET程序集解碼爲等效的C#或IL代碼

  • 支持多種格式(.dll、.exe、.winmd)

  • 將反編譯的程序集保存爲Visual Studio項目

 

18. Ilspy

 

 

基於Red Gate的.NET Reflector開源反編譯器,在2011年中止維護,Ilspy須要.NET Framework 4.0。

 

主要特徵:

  • 瀏覽程序集並將其反編譯爲C#

  • 將程序集保存爲C#項目

  • 直觀的搜索和導航功能

  • 導航歷史

  • 支持C#5.0 「async」

  • 反編譯爲VB和C#

 

19. JustDecompile

 


一個來自Telerik的反編譯器,JustDecompile是一個免費的開源反編譯引擎。

 

主要特徵:

  • 可擴展的開放API

  • 快速代碼導航

  • 輕鬆地在標籤頁中切換方法和程序集

  • 在加載程序集中使用書籤

  • 從反編譯的程序集建立一個Visual Studio項目

  • Visual Studio擴展在VS項目中進行反編譯

 

20. Telerik Code Converter

 


Telerik代碼轉換器將VB代碼轉換爲C#,反之亦然。一個簡單而強大的工具,Telerik代碼轉換器易於使用,具備直觀的界面。

 

主要特徵:

  • 基於雲的轉換,快速和輕鬆的

  • 使用NRefactory庫進行復雜的代碼轉換

  • 使用ASP.NET AJAX的Telerik UI

 

5構建自動化和合並工具

 

21. Cake Build

 


Cake(C#Make)是C#版的開源Make Build自動化工具。一個跨平臺構建自動化系統,Cake使用C# DSL來編寫代碼,運行單元測試,複製文件和文件夾,壓縮文件和構建NuGet軟件包等任務。

 

主要特徵:

  • 在Windows,Linux和OS X上可用

  • 創建與其餘CI系統相同的方式

  • 支持構建工具,包括MSBuild,MSTest,xUnit,NUnit,NuGet,ILMerge,WiX和SignTool

  • 高可擴展

 

22. MSBuild

 


MSBuild是由Microsoft於2008年推出的。它不是Visual Studio平臺的一部分,但它是您的C#開發工具包的一個很好的資源,例如在您構建代碼項目時,除了解決方案以外。

 

主要特徵:

  • 來自微軟,它被許多MS商店普遍使用

  • 微軟把它放到了Visual Studio中確保它不會成單獨存

  • 構建多個項目

  • 構建Win32,x86,x64或任何cpu平臺

  • 爲多個平臺構建多個配置

 

23. FinalBuilder

 


FinalBuilder是構建自動化工具的一個很好的商業選擇。使用FinalBuilder,您不須要編輯XML或編寫腳原本自動完成構建過程。

 

主要特徵:

  • 經過包括可視化調試,使構建變得容易

  • 可視地定義和調試構建腳本

  • 使用Windows調度程序安排腳本

  • 與Continua CI,Jenkins或任何其它CI服務器集成

 

24. SemanticMerge

 


SemanticMerge分析您的代碼,旨在處理已被移動或修改的代碼,使其成爲團隊協做的強大工具。

主要特徵:

  • 實現協做和分佈式開發

  • 從結構合併開始,而後在發生衝突時移動到更具體的基於文本的合併

  • 基於結構而不是位置合併

  • 處理特定於語言的衝突

  • 避免錯誤地識別自動合併

  • 保持清潔的代碼並分析更改

 

 

 

6版本控制

 

25. Git

 


Git就不須要介紹了。這是一個免費的開源版本控制系統,也是當今最流行的版本控制系統。

 

主要特徵:

  • 現代版本控制工具,適用於當今地理位置分佈的團隊

  • 包括強大的默認值,用於解決衝突,自動恢復等

  • 便宜的本地分支

  • 方便的暫存區

  • 多個工做流程

 

26. Team Foundation Version Control

 


TFS版本控制是Microsoft替代Git的一種,它集成到Visual Studio中。它是企業準備的,因此對於使用VS項目的任何規模的團隊來講,這是一個不錯的選擇。

 

主要特徵:

  • 利用Visual Studio功能提供本地體驗

  • 跟蹤分支機構的代碼更改

  • 在代碼簽入以前提供反饋

  • 集成最流行的CI和自動化構建工具

 

27. BitBucket

 


BitBucket是Jira的Git替代品,也是一個有能力的版本控制工具——「惟一一個大規模的協做的Git解決方案。」

 

主要特徵:

  • 使用內聯註釋選項更快地協做

  • 因爲代碼是開源的,仍是讓Jira爲您管理代碼

  • 拉請求容許更有效的代碼審查批准

  • 使用BitBucket數據中心進行不間斷的訪問

  • 無限私有存儲庫

 

28. SourceTree

 


SourceTree是另外一個Jira產品,一個用於Windows和Mac的免費Git客戶端,具備簡單的Git GUI來管理您的倉庫。

 

主要特徵:

  • 支持Windows和Mac

  • 與您的存儲庫進行視覺交互

  • 簡化分佈式版本控制

  • 對初學者來講足夠簡單 足夠強大的專家

 

 

 

7測試工具和VS擴展

 

29. LINQPad

 

 

一個用於即時測試C#,F#和VB中的代碼片斷的工具,LINQPad可讓您以交互方式查詢數據庫。

 

主要特徵:

  • 有本身的查詢語言 - LINQ,這是一個強大的查詢數據庫的方法

  • 很是適合學習C#,由於它爲您提供了IDE的許多功能,而不臃腫

  • 在LINQ(或SQL) - SQL/CE/Azure、Oracle、SQLite和MySQL中查詢數據庫

  • 豐富的輸出格式

  • 腳本並以您首選的.NET語言自動化

 

30. Selenium

 


Selenium是目前最流行的測試工具之一。它能夠自動化Web瀏覽器,以便您能夠在規模和精度上運行測試。

 

主要特徵:

  • 自動化的基於Web的管理任務

  • 建立強大的迴歸自動化套件和測試

  • 跨環境和腳本分發

  • 構建您本身的Selenium服務器或使用供應商提供的託管選項

 

31. ReSharper

 


由JetBrains建立的,ReSharper是.NET開發人員的Visual Studio擴展。使用它來即時分析代碼質量,消除錯誤,安全地更改代碼庫等。

 

主要特徵:

  • 提供即時代碼分析

  • 快速修復錯誤

  • 幫助複雜重構

  • 多個代碼編輯助手

 

32. OzCode

 


OzCode是C#的Visual Studio擴展,提供強大的調試工具,所以您能夠花更多的時間開發和更少的時間調試。

 

主要特徵:

  • 使Visual Studio中更容易找到並修復錯誤

  • 與ReSharper合做

  • 用Magic Glance來繪製出複雜的表達式

  • 強大的搜索,顯示和比較功能

 

33. CodeRush

 

 

CodeRush能夠幫助您輕鬆找到並修復問題,像本節中的其它測試工具同樣,是一個VS擴展。

 

主要特徵:

  • 視覺突出顯示代碼庫中的問題,並幫助您快速發現問題

  • 快速建立新的測試和測試套件與快捷方式

  • 容易重構

 

 

 

8性能分析

 

34. Prefix

 


一個用於.NET和Java的輕量級開發工具,Prefix會實時顯示日誌、錯誤、查詢等。它能夠在您現有的工做站內使用 - 它是免費的。

 

主要特徵:

  • 提供每一個Web請求的詳細跟蹤

  • 沒有凌亂的配置或代碼更改

  • 當即下載; 當即得到代碼分析結果

  • 按要求查看日誌

  • 查找隱藏的異常

  • 查看SQL查詢

  • 快速找出可疑行爲

 

35. dotTrace

 


來自JetBrains,dotTrace是一個分析器,可幫助排除性能問題並加快應用程序的速度。

 

主要特徵:

  • 瞭解SQL查詢和HTTP請求如何影響應用程序性能

  • 查看逐行剖析數據並獲取特定的績效指標

  • 獲取調用執行時間的數據

  • 配置文件SQL查詢和HTTP請求

  • 簡介靜態方法和單元測試

  • 在Visual Studio中配置和可視化結果

 

36. ANTS Performance Profiler

 


ANTS性能分析器是.NET代碼的分析工具,包括提供逐行分析統計信息。

 

主要特徵:

  • 查看SQL查詢和HTTP請求的性能數據

  • 提供逐行結果

  • 顯示歷史性的表現

  • 深刻了解長期分析結果

 

37.N Profiler

 


一個分析工具聲稱比任何其培訓分析器更快,N Profiler提供豐富的.NET性能數據,能夠節省90%的優化時間。

 

主要特徵:

  • 瞭解性能問題的真實緣由 - 數據庫查詢或I/O時間

  • 性能指標組織在調用樹中,能夠在概述或細節級別查看

 

 

 

9APM

 

38. Retrace

 


Retrace是惟一將APM、日誌、錯誤、指標和監控結合在一個平臺上的開發者工具,可幫助您更好地構建。它專爲生產和預生產服務器而設計,每個月只需10美圓。

 

主要特徵:

  • 在代碼級收集性能數據

  • 應用程序和服務器記錄

  • 各類來源的應用指標

  • 錯誤跟蹤和監控

  • 與現有堆棧一塊兒工做

  • 免費試用

 

 

 

10部署自動化

 

39. Octopus

 


C#主要部署自動化工具,這使得自動化複雜的應用程序部署成爲可能。

 

主要特徵:

  • 提供和配置新機器來部署您的應用程序

  • 與CI服務器集成,將構建自動化和CI進程擴展到部署中

  • 精簡各環境之間的版本

  • 可重複,可靠的部署

 

40. Appveyor

 


一個CI構建服務器,不只能夠處理構建,並且還能夠進行部署,Appveyor很是強大,安全,而且無需設置便可開始使用。

 

主要特徵:

  • 用於構建,測試和部署端到端解決方案

  • 易於使用,無需設置

  • 隔離構建環境

  • 使用UI或YAML的開發人員友好的構建配置

  • 內置部署和NuGet服務器

  • 多分支構建

 

41.AppHarbor

 


AppHarbor不只僅是部署:它是一個徹底託管的.NET 平臺服務。它用於託管從我的博客到高流量網絡應用程序的全部內容。

 

主要特徵:

  • 從源代碼存儲庫獲取代碼,並將其部署在本身的託管平臺上

  • 使用您最喜歡的版本控制工具即時部署和擴展.NET應用程序

  • 不用擔憂擴展您的基礎架構來跟上負載,AppHarbor會爲您處理這一切

 

42. Jenkins

 


Jenkins不只僅是部署自動化工具,也是最受歡迎的CI服務器,它將其覆蓋面擴展到部署和交付階段。

 

主要特徵:

  • 豐富的收集擴展,以適應每一個堆棧

  • 從構建到部署的端到端解決方案

  • 數以百計的插件來支持構建,部署和自動化

 

 

 

11容器

 

43. Docker.DotNet

 


Docker.DotNet是Docker API的C#客戶端庫。經過它,您能夠經過編程方式與Docker Remote API進行交互。

 

主要特徵:

  • 能夠經過Visual Studio的NuGet庫管理器進行安裝

  • 在.NET中啓用徹底異步,非阻塞,面向對象的代碼

 

44. Distelli

 


一個強大的工具來集中化C#應用程序,Distelli幫助您從頭至尾自動化您的容器工做流程。有關如何使用Distelli構建和部署C#應用程序,請參閱此有用的教程 。本教程提供了構建和部署Docker C#應用程序的分步說明。

 

主要特徵:

  • 使用Distelli自動化您的容器工做流端到端

  • 部署到Kubernetes,用於最早進的容器編排

 

C#和.NET Core 將在2018年及之後的獲得巨大的發展,磨練C#技能將在將來幾年內爲您服務。咱們但願您已經找到了一兩種可使用的工具,並提升了C#開發的質量和生產力。若是有什麼工具咱們遺漏了,請告訴咱們,這個工具應該在這個工具包中有一席之地。

相關文章
相關標籤/搜索