每个.NET 开发人员应该下载的十个必备工具

来源:互联网 发布:java多线程编程 csdn 编辑:程序博客网 时间:2024/04/28 08:58

 

原文出处:.NET Tools:Ten Must-Have Tools Every Developer Should Download Now

本文自发布以来已经增加了新的信息。请参阅下面的编辑更新。

本文讨论的工具如下:

  • NUnit:编写单元测试的工具
  • NDoc:创建代码文档的工具
  • NAnt:生成解决方案的工具
  • CodeSmith:代码生成工具
  • FxCop:用于监视代码的——代码警察
  • Snippet Compiler:小型代码段编译工具
  • 两个不同的转换器工具,ASP.NET 版本转换器(Version Switcher)和 Visual Studio .NET 项目转换器(Project Converter)

     

    Regulator:生成正则表达式工具

  • .NET Reflector:程序集分析检查工具

 

本文使用了以下技术:.NET,C#,Visual Basic .NET,Visual Studio .NET

  除非你使用可获得的最好的工具,否则别指望能生成一流的应用程序。除了 Visual Studio .NET 这种大型工具以外,你从 .NET 社区还可以获得许多小型的、不太为人所知的工具。我在本文中将向你介绍几个目前可以获得的、面向 .NET 开发的最好的免费工具。我将引领你完成一个有关如何使用每种工具的快速教程—— 有些工具在许多场合可以节约你的时间,而另一些工具则可能完全改变你编写代码的方式。因为我要在本篇文章中介绍如此之多的不同工具,所以我无法详尽讨论其中每种工具,但你应该充分了解每种工具的信息,以便决定哪些工具对你的项目有用。

http://www.sliver.com/dotnet/SnippetCompiler

http://royo.is-a-geek.com/regulator

Figure 3 中查看该模板的主体。[编辑更新 — 6/16/2004:Figure 3 中的代码已被更新,以便对多线程操作保持安全。]

正如你所见,该模板接受字符串输入并使用该类名生成单独的类。在模板主体中,使用与 ASP.NET 中相同的起始和结束标记。在该模板中,我只是插入属性值,但你还可以在这些标记内部使用任意类型的 .NET 代码。在该模板完成之后,你就可以通过双击它或者从 CodeSmith 应用程序中打开它将其加载到 CodeSmith 中。Figure 4 显示了已经加载到 CodeSmith 中的该模板。

Figure 4 CodeSmith 模版

  你可以看到左侧的属性正是我在该模板中声明的属性。如果我输入“SingletonClass”作为类名,并单击 Generate 按钮,则生成 Figure 3 的底部显示的类。

  CodeSmith 使用起来相当容易,如果能够正确应用,则可以产生一些令人难以置信的结果。面向代码生成的应用程序中最常见的部分之一是数据访问层。CodeSmith 包括一个名为 SchemaExplorer 的特殊的程序集,可用来从表、存储过程或几乎任何其他 SQL Server? 对象生成模板。

CodeSmith 由 Eric J. Smith 编写,下载地址是:http://www.ericjsmith.net/codesmith

http://www.nunit.org/。还有一个优秀的 NUnit Visual Studio .NET 外挂程序,它使你可以直接从 Visual Studio 中运行单元测试。你可以在 http://sourceforge.net/projects/nunitaddin 找到它。有关 NUnit 及其在测试驱动开发中的地位的详细信息,请参阅文章:“Test-Driven C#: Improve the Design and Flexibility of Your Project with Extreme Programming Techniques

Bugslayer 专栏文章。

  那么,让我们看看实际运行的 FxCop,并且留心一下它在我正在开发的 NUnitExample 程序集中找到什么错误。当你打开 FxCop 时,你首先需要创建一个 FxCop 项目,然后向其添加你要测试的程序集。在将该程序集添加到项目以后,就可以按 Analyze,FxCop 将分析该程序集。Figure 6 显示了 FxCop 在该程序集中找到的错误和警告。

Figure 6 FxCop 运行画面

  FxCop 在我的程序集中找到了几个问题。你可以双击某个错误以查看详细信息,包括规则说明以及在哪里可以找到更多信息。(你可以做的一件有趣的事情是在框架程序集上运行 FxCop 并查看发生了什么事情。)

  FxCop 可以帮助你创建更好的、更一致的代码,但它无法补偿低劣的应用程序设计或非常简单拙劣的编程。FxCop 也不能替代对等代码检查,但是因为它可以在进行代码检查之前捕获大量错误,所以你可以花费更多时间来解决严重的问题,而不必担心命名约定。FxCop 由 Microsoft 开发,下载地址是:http://www.gotdotnet.com/team/fxcop

Figure 8 中显示了完整的生成文件。(你通常还要创建一个干净的 target,用于删除生成的文件,但为了简洁起见,我已经将其省略。)

  要生成该文件,我需要转到我的项目的根目录(生成文件位于此处),然后从该位置执行 nant.exe。如果生成成功,你可以在该应用程序的 bin 目录中找到 .dll 和 .pdb 文件。尽管使用 NAnt 肯定不像在 Visual Studio 中单击 Build 那样简单,但它仍然是一种非常强大的工具,可用于开发按自动计划运行的生成过程。NAnt 还包括一些有用的功能,例如能够运行单元测试或者复制附加文件(这些功能没有受到当前 Visual Studio 生成过程的支持)。 NAnt 是一个开放源代码项目,下载地址是:http://nant.sourceforge.net/

http://www.denisbauer.com/NETTools/ASPNETVersionSwitcher.aspx

  http://www.codeproject.com/macro/vsconvert.asp

总结

  本文采用走马观花的方式介绍了上述工具,但我已经试图起码向你提供足够的信息以激起你的好奇心。我相信本文已经让你在某种程度上领悟了几个免费工具,你可以立即开始使用这些工具来编写更好的项目。同时,我还要敦促 你确保自己拥有所有其他可以获得的合适工具,无论是最新版本的 Visual Studio、功能强大的计算机还是免费的实用工具。拥有合适的工具将使一切变得大不相同。

 

作者简介

 

  James Avery 是一位使用 .NET 和其它微软技术的顾问。他撰写了许多书籍和文章,其最新著作是《ASP.NET Setup and Configuration Pocket Reference》(Microsoft Press, 2003)。你可以通过 javery@infozerk.com 向他发送电子邮件,并且在 http://www.dotavery.com/blog 阅读他的网络日记。

原创粉丝点击