C#是企业中广泛使用的编程语言,特别是那些依赖微软的程序语言。如果您使用C#构建应用程序,则最有可能使用Visual Studio,并且已经寻找了一些扩展来对您的开发进行管理。但是,这个工具列表可能会改变您编写C#代码的方式。
C#编程的最佳工具有以下几类:
- IDE
- VS扩展
- 编译器、编辑器和序列化
- 反编译和代码转换工具
- 构建自动化和合并工具
- 版本控制
- 测试工具和VS扩展
- 性能分析
- APM
- 部署自动化
- 容器
IDE
1、Visual Studio Code
Visual Studio Code是C#开发人员最受欢迎的代码编辑器。您可以使用Visual Studio Code与C#扩展功能实现强大的编辑功能,并完全支持C# IntelliSense和调试。
主要特征:
优秀的自动完成与上下文感知提示
内置Git集成,实现更好的版本控制
大量的扩展进一步增强平台
2、MonoDevelop
由Xamarin开发,MonoDevelop具有许多与VS Code相似的功能,也是跨平台的。使用MonoDevelop,您可以在Windows,Linux和Mac OS X上快速编写桌面和Web应用程序。
主要特征:
标准功能,如代码提示和调试
还配有Unity,一个游戏引擎,可以为视频游戏等应用程序实现高级C#编程
支持C#代码提示
代码模板和代码折叠
多语言支持
Visual Studio 扩展
3、Productivity Power Tools 2017
由Microsoft提供,这是一个很好的扩展,以加快Visual Studio的开发。
主要特征:
中间点击滚动
快速查找
解决方案错误可视化
直观的界面
其它版本可用于旧版Visual Studio版本
4、jQuery Code Snippets
简化jQuery框架编码,jQuery Code Snippets为Visual Studio 2012,2013,2015和2017提供了超过130个代码段。
主要特征:
130多种jQuery代码片段
支持所有版本的Visual Studio
对于那些刚入门jQuery开发人员来说非常棒,可以使用这个扩展来学习jQuery的门道
编译器、编辑器和序列化
5、SlickEdit
SlickEdit是一个代码编辑工具,可以提高生产力并提高代码质量。它是一个跨平台的代码编辑器,可在九个平台上支持超过60种语言(包括C#)。
主要特征:
编译并调试您的代码,显示所有错误以便行快速访问
可以处理非常大的代码文件,大到2TB
语法扩展和缩进
按键模拟
备份历史记录
多个光标和选择
标准和专业版可用于满足您的需求
6、Rextester
Rextester(代表正则表达式测试器)是C#的简单在线编译器。
主要特征:
每段代码运行CPU时间最多为5秒
每段代码最多可以占用150MB内存
代码在应用程序域中运行,具有基本的执行、反射、线程控制和web权限
7、C# Pad
C# Pad是C#的一个方便的REPL工具。使用起来很简单:输入代码,点击“Go”执行。
主要特征:
在线快速测试C#代码
包括代码自动完成
可嵌入其它网站
反编译和代码转换工具
8、dotPeek
dotPeek允许您将.NET程序集反编译为C#。dotBeek是JetBrains提供的免费独立工具,基于ReSharper捆绑的反编译器。
主要特征:
强大的搜索和导航功能
将任何.NET程序集解码为等效的C#或IL代码
支持多种格式(.dll、.exe、.winmd)
将反编译的程序集保存为Visual Studio项目
9、ILspy
基于Red Gate的.NET Reflector开源反编译器,在2011年停止维护,ILspy需要.NET Framework 4.0。
主要特征:
浏览程序集并将其反编译为C#
将程序集保存为C#项目
直观的搜索和导航功能
导航历史
支持C#5.0 “async”
反编译为VB和C#
版本控制
10、Git
Git就不需要介绍了。这是一个免费的开源版本控制系统,也是当今最流行的版本控制系统。
主要特征:
现代版本控制工具,适用于当今地理位置分布的团队
包括强大的默认值,用于解决冲突,自动恢复等
便宜的本地分支
方便的暂存区
多个工作流程
11、Team Foundation Version Control
TFS版本控制是Microsoft替代Git的一种,它集成到Visual Studio中。它是企业准备的,所以对于使用VS项目的任何规模的团队来说,这是一个不错的选择。
主要特征:
利用Visual Studio功能提供本地体验
跟踪分支机构的代码更改
在代码签入之前提供反馈
集成最流行的CI和自动化构建工具
测试工具和VS扩展
12、LINQPad
一个用于即时测试C#,F#和VB中的代码片段的工具,LINQPad可以让您以交互方式查询数据库。
主要特征:
有自己的查询语言 - LINQ,这是一个强大的查询数据库的方法
非常适合学习C#,因为它为您提供了IDE的许多功能,而不臃肿
在LINQ(或SQL) - SQL/CE/Azure、Oracle、SQLite和MySQL中查询数据库
丰富的输出格式
脚本并以您首选的.NET语言自动化
性能分析
13、Prefix
一个用于.NET和Java的轻量级开发工具,Prefix会实时显示日志、错误、查询等。它可以在您现有的工作站内使用 - 它是免费的。
主要特征:
提供每个Web请求的详细跟踪
没有凌乱的配置或代码更改
立即下载; 立即获得代码分析结果
按要求查看日志
查找隐藏的异常
查看SQL查询
快速找出可疑行为
APM
14、Retrace
Retrace是唯一将APM、日志、错误、指标和监控结合在一个平台上的开发者工具,可帮助您更好地构建。它专为生产和预生产服务器而设计,每月只需10美元。
主要特征:
在代码级收集性能数据
应用程序和服务器记录
各种来源的应用指标
错误跟踪和监控
与现有堆栈一起工作
免费试用
部署自动化
15、Octopus
C#主要部署自动化工具,这使得自动化复杂的应用程序部署成为可能。
主要特征:
提供和配置新机器来部署您的应用程序
与CI服务器集成,将构建自动化和CI进程扩展到部署中
精简各环境之间的版本
可重复,可靠的部署
16、Appveyor
一个CI构建服务器,不仅可以处理构建,而且还可以进行部署,Appveyor非常强大,安全,并且无需设置即可开始使用。
主要特征:
用于构建,测试和部署端到端解决方案
易于使用,无需设置
隔离构建环境
使用UI或YAML的开发人员友好的构建配置
内置部署和NuGet服务器
多分支构建
容器
17、
是Docker API的C#客户端库。通过它,您可以通过编程方式与Docker Remote API进行交互。
主要特征:
可以通过Visual Studio的NuGet库管理器进行安装
在.NET中启用完全异步,非阻塞,面向对象的代码
18、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》