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

来源:http://www.cnblogs.com/tdfblog/archive/2017/09/11/best-csharp-tools.html
-Advertisement-
Play Games

C 是企業中廣泛使用的編程語言,特別是那些依賴微軟的程式語言。如果您使用C 構建應用程式,則最有可能使用Visual Studio,並且已經尋找了一些擴展來對您的開發進行管理。但是,這個工具列表可能會改變您編寫C 代碼的方式。 C 編程的最佳工具有以下幾類: "IDE" "VS擴展" "編譯器、編輯 ...


C#是企業中廣泛使用的編程語言,特別是那些依賴微軟的程式語言。如果您使用C#構建應用程式,則最有可能使用Visual Studio,並且已經尋找了一些擴展來對您的開發進行管理。但是,這個工具列表可能會改變您編寫C#代碼的方式。

C#編程的最佳工具有以下幾類:

使用上面的鏈接直接跳轉到特定工具,或繼續閱讀以瀏覽完整列表。

IDE

1. Visual Studio Code

Visual Studio Code

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

主要特征:

  • 優秀的自動完成與上下文感知提示
  • 內置Git集成,實現更好的版本控制
  • 大量的擴展進一步增強平臺

2. MonoDevelop

Mono Develop

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

主要特征:

  • 標準功能,如代碼提示和調試
  • 還配有Unity,一個游戲引擎,可以為視頻游戲等應用程式實現高級C#編程
  • 支持C#代碼提示
  • 代碼模板和代碼摺疊
  • 多語言支持

3. SharpDevelop

SharpDevelop

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

主要特征:

  • Visual Studio提供的通常功能,包括代碼編輯,編譯和調試
  • 一些高級功能包括上下文操作和後臺語法檢查

4. Rider

Rider

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

主要特征:

  • 與其他JetBrains產品無縫集成
  • 2000多種代碼檢查
  • 上下文操作
  • 支持Unity游戲引擎
  • 支持.NET Framework和.NET Core

Visual Studio 擴展

5. Productivity Power Tools 2017

Productivity Power Tools

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

主要特征:

  • 中間點擊滾動
  • 快速查找
  • 解決方案錯誤可視化
  • 直觀的界面
  • 其它版本可用於舊版Visual Studio版本

6. jQuery Code Snippets

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

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

主要特征:

  • 修複常見的錯字和編碼錯誤
  • 在代碼庫中找到每種不匹配的樣式
  • 開源代碼,您可以擴展或改進它

編譯器、編輯器和序列化

9. SlickEdit

SlickEdit

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

主要特征:

  • 編譯並調試您的代碼,顯示所有錯誤以便行快速訪問
  • 可以處理非常大的代碼文件,大到2TB
  • 語法擴展和縮進
  • 按鍵模擬
  • 備份歷史記錄
  • 多個游標和選擇
  • 標準和專業版可用於滿足您的需求

10. Rextester

Rextester

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

主要特征:

  • 每段代碼運行CPU時間最多為5秒
  • 每段代碼最多可以占用150MB記憶體
  • 代碼在應用程式域中運行,具有基本的執行、反射、線程式控制制和web許可權

11. C# Pad

CSharpPad

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

主要特征:

  • 線上快速測試C#代碼
  • 包括代碼自動完成
  • 可嵌入其它網站

12. Jdoodle

JDoodle

另一個輕量級代碼編譯器,Jdoodle支持63種語言(包括C#),並允許您保存程式並與其他人共用URL。您可以將Jdoodle中創建的代碼嵌入到您的網站,用於協作,線上訪問等。

主要特征:

  • 線上快速測試一小段代碼,而無需打開IDE
  • 輕鬆地與他人分享您的代碼
  • API即將推出

13. .NET Fiddle

DotNetFiddle

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

主要特征:

  • 讓您編寫,保存和協作C#代碼
  • 支持4種項目類型:控制台,Script,MVC,Nancy
  • 還支持VB.NET和F#

14. Telerik Fiddler

Fiddler

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

主要特征:

  • 運行一系列測試,如性能測試、Web調試和安全測試
  • FiddlerCore可讓您將Fiddler應用程式嵌入到您自己的應用程式中,以便您可以避免整個Fiddler UI,還可以獲得Fiddler的所有功能

15. Json.NET

Json.NET

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

主要特征:

  • 對.NET對象進行序列化和反序列化
  • 查詢JSON資料庫
  • 使用JObject,JArray和JValue對象創建、解析、查詢和修改JSON
  • 開源

16. Scriptcs

Scriptcs

一個簡單的線上編輯器,編寫和執行C#代碼,Scriptcs被設計為非常簡單,以避免使用過於複雜的工具和解決方案阻礙您的工作效率。

主要特征:

  • 避免完整IDE的臃腫
  • 為您提供簡單的C#編碼任務的靈活性和速度
  • 管理與NuGet的依賴關係
  • 優雅的C#腳本語法

反編譯和代碼轉換工具

17. dotPeek

dotPeek

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

主要特征:

  • 強大的搜索和導航功能
  • 將任何.NET程式集解碼為等效的C#或IL代碼
  • 支持多種格式(.dll、.exe、.winmd)
  • 將反編譯的程式集保存為Visual Studio項目

18. ILspy

Ilspy

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

主要特征:

  • 瀏覽程式集並將其反編譯為C#
  • 將程式集保存為C#項目
  • 直觀的搜索和導航功能
  • 導航歷史
  • 支持C#5.0 “async”
  • 反編譯為VB和C#

19. JustDecompile

JustDecompile

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

主要特征:

  • 可擴展的開放API
  • 快速代碼導航
  • 輕鬆地在標簽頁中切換方法和程式集
  • 在載入程式集中使用書簽
  • 從反編譯的程式集創建一個Visual Studio項目
  • Visual Studio擴展在VS項目中進行反編譯

20. Telerik Code Converter

Telerik Code Converter

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

主要特征:

  • 基於雲的轉換,快速和輕鬆的
  • 使用NRefactory庫進行複雜的代碼轉換
  • 使用ASP.NET AJAX的Telerik UI

構建自動化和合併工具

21. Cake Build

Cake

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

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

主要特征:

  • 來自微軟,它被許多MS商店廣泛使用
  • 微軟把它放到了Visual Studio中確保它不會成單獨存
  • 構建多個項目
  • 構建Win32,x86,x64或任何cpu平臺
  • 為多個平臺構建多個配置

23. FinalBuilder

FinalBuilder

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

主要特征:

  • 通過包括可視化調試,使構建變得容易
  • 可視地定義和調試構建腳本
  • 使用Windows調度程式安排腳本
  • 與Continua CI,Jenkins或任何其它CI伺服器集成

24. SemanticMerge

SemanticMerge

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

主要特征:

  • 實現協作和分散式開發
  • 從結構合併開始,然後在發生衝突時移動到更具體的基於文本的合併
  • 基於結構而不是位置合併
  • 處理特定於語言的衝突
  • 避免錯誤地識別自動合併
  • 保持清潔的代碼並分析更改

版本控制

25. Git

Git

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

主要特征:

  • 現代版本控制工具,適用於當今地理位置分佈的團隊
  • 包括強大的預設值,用於解決衝突,自動恢復等
  • 便宜的本地分支
  • 方便的暫存區
  • 多個工作流程

26. Team Foundation Version Control

Team Foundation Version Control

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

主要特征:

  • 利用Visual Studio功能提供本地體驗
  • 跟蹤分支機構的代碼更改
  • 在代碼簽入之前提供反饋
  • 集成最流行的CI和自動化構建工具

27. BitBucket

Bitbucket

BitBucket是Jira的Git替代品,也是一個有能力的版本控制工具——“唯一一個大規模的協作的Git解決方案。”

主要特征:

  • 使用內聯註釋選項更快地協作
  • 由於代碼是開源的,還是讓Jira為您管理代碼
  • 拉請求允許更有效的代碼審查批准
  • 使用BitBucket數據中心進行不間斷的訪問
  • 無限私有存儲庫

28. SourceTree

SourceTree

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

主要特征:

  • 支持Windows和Mac
  • 與您的存儲庫進行視覺交互
  • 簡化分散式版本控制
  • 對初學者來說足夠簡單 足夠強大的專家

測試工具和VS擴展

29. LINQPad

LinqPad

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

主要特征:

  • 有自己的查詢語言 - LINQ,這是一個強大的查詢資料庫的方法
  • 非常適合學習C#,因為它為您提供了IDE的許多功能,而不臃腫
  • 在LINQ(或SQL) - SQL/CE/Azure、Oracle、SQLite和MySQL中查詢資料庫
  • 豐富的輸出格式
  • 腳本並以您首選的.NET語言自動化

30. Selenium

SeleniumHQ

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

主要特征:

  • 自動化的基於Web的管理任務
  • 創建強大的回歸自動化套件和測試
  • 跨環境和腳本分發
  • 構建您自己的Selenium伺服器或使用供應商提供的托管選項

31. ReSharper

Resharper

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

主要特征:

  • 提供即時代碼分析
  • 快速修複錯誤
  • 幫助複雜重構
  • 多個代碼編輯助手

32. OzCode

OzCode

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

主要特征:

  • 使Visual Studio中更容易找到並修複錯誤
  • 與ReSharper合作
  • 用Magic Glance來繪製出複雜的表達式
  • 強大的搜索,顯示和比較功能

33. CodeRush

CodeRush

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

主要特征:

  • 視覺突出顯示代碼庫中的問題,並幫助您快速發現問題
  • 快速創建新的測試和測試套件與快捷方式
  • 容易重構

性能分析

34. Prefix

Prefix

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

主要特征:

  • 提供每個Web請求的詳細跟蹤
  • 沒有凌亂的配置或代碼更改
  • 立即下載; 立即獲得代碼分析結果
  • 按要求查看日誌
  • 查找隱藏的異常
  • 查看SQL查詢
  • 快速找出可疑行為

35. dotTrace

DotTrace

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

主要特征:

  • 瞭解SQL查詢和HTTP請求如何影響應用程式性能
  • 查看逐行剖析數據並獲取特定的績效指標
  • 獲取調用執行時間的數據
  • 配置文件SQL查詢和HTTP請求
  • 簡介靜態方法和單元測試
  • 在Visual Studio中配置和可視化結果

36. ANTS Performance Profiler

ANTS Performance Profiler

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

主要特征:

  • 查看SQL查詢和HTTP請求的性能數據
  • 提供逐行結果
  • 顯示歷史性的表現
  • 深入瞭解長期分析結果

37.N Profiler

NProfiler

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

主要特征:

  • 瞭解性能問題的真實原因 - 資料庫查詢或I/O時間
  • 性能指標組織在調用樹中,可以在概述或細節級別查看

APM

38. Retrace

Retrace

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

主要特征:

  • 在代碼級收集性能數據
  • 應用程式和伺服器記錄
  • 各種來源的應用指標
  • 錯誤跟蹤和監控
  • 與現有堆棧一起工作
  • 免費試用

部署自動化

39. Octopus

Octopus

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

主要特征:

  • 提供和配置新機器來部署您的應用程式
  • 與CI伺服器集成,將構建自動化和CI進程擴展到部署中
  • 精簡各環境之間的版本
  • 可重覆,可靠的部署

40. Appveyor

AppVeyor

一個CI構建伺服器,不僅可以處理構建,而且還可以進行部署,Appveyor非常強大,安全,並且無需設置即可開始使用。

主要特征:

  • 用於構建,測試和部署端到端解決方案
  • 易於使用,無需設置
  • 隔離構建環境
  • 使用UI或YAML的開發人員友好的構建配置
  • 內置部署和NuGet伺服器
  • 多分支構建

41.AppHarbor

AppHarbor

AppHarbor不僅僅是部署:它是一個完全托管的.NET 平臺服務。它用於托管從個人博客到高流量網路應用程式的所有內容。

主要特征:

  • 從源代碼存儲庫獲取代碼,並將其部署在自己的托管平臺上
  • 使用您最喜歡的版本控制工具即時部署和擴展.NET應用程式
  • 不用擔心擴展您的基礎架構來跟上負載,AppHarbor會為您處理這一切

42. Jenkins

Jenkins

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

主要特征:

  • 豐富的收集擴展,以適應每個堆棧
  • 從構建到部署的端到端解決方案
  • 數以百計的插件來支持構建,部署和自動化

容器

43. Docker.DotNet

DockerDotNet

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

主要特征:

  • 可以通過Visual Studio的NuGet庫管理器進行安裝
  • 在.NET中啟用完全非同步,非阻塞,面向對象的代碼

44. Distelli

Distelli

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

主要特征:

  • 使用Distelli自動化您的容器工作流端到端
  • 部署到Kubernetes,用於最先進的容器編排

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

原文:《The Ultimate List of C# Tools: IDEs, Profilers, Automation Tools, and More》https://stackify.com/best-csharp-tools/
翻譯:Sweet Tang
本文地址:http://www.cnblogs.com/tdfblog/p/best-csharp-tools.html
歡迎轉載,請在明顯位置給出出處及鏈接。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...