.NET Tools dotCover dotMemory dotPeek dotTrace ReSharper Platform Rider

2022 开发者生态系统:C# 的主要趋势

Read this post in other languages:

又到这个时候了! 整个软件开发行业以回顾过去的一年来开始新的一年。 就像我们的软件开发项目一样。

JetBrains 每年都会发起开发者生态系统调查,希望捕捉开发领域的时代思潮。 调查涵盖多种语言和技术,但本次回顾重点关注 C#。 以下就是调查结果及相关评论。

查看完整报告

C# 重点发现

.NET 总体上仍然是许多类型的应用程序和公司的可靠平台。 虽然 C# 11 是最新版本,但它发布于 2022 年 11 月,因此发布版本的全年数据尚不存在,我们的调查最多包含到 C# 10。 首先,按版本深入分析 C# 的受欢迎程度。

在 2020 年和 2021 年,超过一半的 C# 开发者都在使用版本 8。 自 2021 年以来,一半的 C# 开发者都在使用 C# 10。 C# 8 下降到 33%,版本 9 的数字从 30% 上升到 32%,似乎很多地方直接升级到了 C# 10。 像往常一样,公司希望尽可能延长软件的生命周期,通常只在新功能显著增强软件的某些方面时才会升级。 提到遗留代码,有 24% 的受访者使用 2017 年发布的 C# 7。   

图片显示以下问题的调查结果:您经常使用什么版本的 C#?

一般而言,C# 是非常流行的语言 – 在所有语言中排名前 10。 在 .NET 堆栈中,语言受欢迎程度每年都保持稳定。C# 处于领先地位,其后是 HTML 和 JavaScript。 根据调查的主要结论,75% 的开发者从事 Web 开发,因此这是意料之中的。

在过去的几年以及本次调查中,TypeScript 一直紧随 JavaScript,然后是其余的 .NET 语言:VB.NET 和 F#。 是! 这些语言都很有用,虽然可能不够流行。 也请记住,Rider 和 R# 都支持它们。

图片显示以下问题的调查结果:您正在 .NET 项目中使用哪种(哪些)编程语言?

不出所料,ASP.NET Core 是最受 .NET 开发者欢迎的框架。 Entity Framework 遵循它是有道理的,因为这是 Microsoft 创建的 ORM。 任何第三方数据访问框架或 ORM 都属于“其他”类别。 之后是云、游戏和特定框架,如 Razor Pages、React、ASP.NET WebForms 等。

图片显示以下问题的调查结果:您在 VS 或 Rider 中开发什么类型的软件?

到目前为止,人们使用的 .NET 运行时可能会由于许多因素而表现出较大差异,但我们注意到,如 JetBrains .NET 技术布道师 Maarten Balliauw 所说:“.NET Framework 还没有消失。 采用较新 .NET 版本的人似乎遵循 LTS 版本,.NET 6 位居第二,几乎与完整框架持平。” 

图片显示以下问题的调查结果:您经常使用哪种(哪些)运行时?

好消息! Rider 越来越受欢迎。 显然,我们已经知道 Rider 有多棒。 您还怀有疑虑,没有尝试过吗? 现在就来下载试用版吧。

图片显示以下问题的调查结果:您在 Visual Studio 中使用什么插件?

谈到 IDE,我们就不能不谈到插件。 就 Visual Studio 而言,人们要么不使用任何插件,要么使用 ReSharper,分别占 47% 和 36%。 其他流行插件的百分比都是个位数,因此您可能不会很快在团队中看到它们。 

对于 Visual Studio Code,首先是 C#。 C# ExtensionsC# for Visual Studio Code 是两个最受欢迎的插件,但 Unity.NET Core 工具NuGet 工具也很受欢迎。 由于 Visual Studio Code 通过大量插件提供基本功能,我们预计这种趋势将持续下去,许多人会在 VS Code 而不是 Visual Studio 中使用更多插件。

围绕单元测试的场景基本保持不变。 只有回到 2019 年才能让 MS Test 比 xUnit 更受欢迎。 在接下来的几年里,我们认为 xUnit 和 NUnit 将保持稳定,除非工具以某种方式推动使用率。

有趣的是:不编写测试的开发者 (16%) 多于使用 MS Test 编写测试的开发者 (14%)。关于这一点,Microsoft Azure 的 Dennis Dietrich 表达了对测试的看法:“身为前 SDET,不编写单元测试的 C# 开发者占比让我有些失望。 我曾希望到目前为止,人们对单元测试的好处已经达成共识。 我很好奇其中的原因。 是开发者不相信这些好处吗? 是缺乏培训或工程文化的问题? 还是管理层反对单元测试所需的短期投资?”

图片显示以下问题的调查结果:您经常使用什么单元测试框架?

性能和分析仍然是团队中特定人员所做的专业化任务。但它们对软件质量很重要。 我们希望人们会继续从“不时”组转移到“定期”或“经常”组。 但就目前而言,74% 的人只是在偶尔出现问题时才进行分析,这对应绝大多数开发者。 19% 的人定期进行分析,更少的人将分析纳入 CI 流程。 分析可以帮助您在陷入麻烦之前发现问题。 幸运的是,我们有 dotMemorydotTrace 帮助您进行分析,避免潜在问题。 

图片显示以下问题的调查结果:您通常使用分析或诊断工具的频率如何?

结论

像往常一样,.NET 生态系统,特别是 C# 仍然是很好的职业道路选择人们以稳定速度转向新版本,但始终会有相当数量的遗留开发者。 Rider 和 ReSharper 表现得很好,表明每年都有更多开发者被高质量的工具所吸引。 同时,分析比去年更普遍一些,希望这种趋势能继续下去。

 

本博文英文原作者:

image description

Discover more