.NET 工具和实践调查结果

  • Roopesh Shenoy
  • 侯伯薇

2012 年 12 月 18 日

话题:.NET持续集成语言 & 开发架构

我们发布的.NET 工具和实践社区调查收到了超过 650 张投票,让我们看到一些有趣的结果。我们试着从中提炼出一些见解。

值得注意的有:

  • 投票的数量和工具本身的数量不成比例——这更表现在普及率和使用率上,那也是由于本次调查投票的样本大小所限。
  • 正如多位读者所指出的,有一些我们遗漏了的选项——我们在这篇文章的末尾把它们列举出来,从而让读者们也能看到。
  • 基于投票者对工具的投票,我们还试图估计每种工具把相应的实践渗入到社区中有多深(例如,使用 NUnit 的人肯定会编写单元测试,而使用 Jenkins 的人应该熟悉并使用持续集成)。

对于这些结果我们能做什么呢? 建议如下:

  • 如果你非常喜欢某种工具,但是普及率很低,那么可能在社区中大家还不知道——可能你可以帮忙撰写文章或者博客来推荐这些工具。
  • 如果有些工具排名很高,但是你还没有用过,那么就试着更多地了解它,看它是否能够满足你的某些需求。
  • 如果我们在调查和下面的列表中遗漏了你最喜欢的工具(至少对于这些实践来说),请在评论中着重说明。

这样,让我们来看一下结果:

TestingResults

需要着重说明的几点:

  • 80% 的回应者都会实践单元测试——其中 78% 使用 NUnit 来满足他们单元测试的需求。
  • 在实践单元测试的人之中,大约 75%(占所有回应者的 60%)使用某种模拟框架(mocking framework)。Moq 是最流行的选择,占据 70% 的份额。
  • 25% 的响应者使用 BDD 工具——其中 60% 使用 Specflow。
  • 67% 的响应者使用我们所列出的 IoC 容器之一——各种选项都有人使用(NInject 稍微领先),不少响应者使用过一种以上框架。
  • 80% 的响应者使用某种 ORM,至少四分之一的人使用过一种以上——最常用的 ORM 是 Entity Framework,紧跟其后的是 NHibernate。
  • 76% 的响应者使用支持持续集成的工具——TFS 以 48% 的使用率高居榜首(尽管也可以使用 TFS 而不使用持续集成)。使用率最高的纯粹持续集成工具是 TeamCity。

对于所有实践,使用率的图表如图所示,y 轴表示响应者使用至少一种支持相应实践工具的百分比:

以下是没有在调查中包含、但是在社区的评论中大家推荐的工具列表。

查看英文原文:.NET Tools And Practices Research Insights

.NET持续集成语言 & 开发架构