原文出处: http://msdn.microsoft.com/msdnmag/issues/04/07/MustHaveTools/default.aspx 标题: Ten Must-Have Tools Every Developer Should Download Now 作者: James Avery 1. 很多时候,我们仅仅为了测试一段很小的代码,却不得不在Visual Studio .NET里面建立一个Project,真是大费周章,而我们又不想用记事本很命令行手动编译,有没有一个好的折中方案呢?既兼有自动编译的好处,又不需要大费周章的创建一个VS Project?答案是肯定的。Snippet Compiler就是一个好的选择。你可以去 http://www.sliver.com/dotnet/SnippetCompiler 下载使用,当然,它是免费的!先看看样板吧。
2004-6-24 11:02:52
2. 觉得正则表达式定义或者测试很麻烦?没问题Regulator帮你忙!有了它,你可以直接编辑正字表达式还有测试表达式的效果。还不赶快去 http://royo.is-a-geek.com/iserializable/regulator/ 下载?什么?想看看样板?没问题!
3. 单元测试谁都知道重要啦,但是做起来嘛...我想放多一点心思到程序的构造和编码上,不过...还是要做单元测试...很矛盾吗?Test-Driven Development的原则还记得吗?现在NUnit帮助你用上这些原则了!什么?Test-Driven Development是什么?Oh, my god! 看看这篇Improve the Design and Flexibility of Your Project with Extreme Programming Techniques吧!在 http://msdn.microsoft.com/msdnmag/issues/04/04/ExtremeProgramming/default.aspx 。想下载NUnit试一下吗?没问题, http://www.nunit.org 不会逃走的!至于样板嘛...当然有啦
4. 好的代码有很多因素来决定,这些因素聚集在一起就成为一个标准,不同的程序员会有不同的标准来衡量什么代码是好的。例如字段的命名方式、每一个类必须有一个默认的无参Constructor等。相信你也会有你自己的一套标准,但你可能会在想,哎呀,难道每次都要我手工对照每一项标准来检查并修改代码吗?有没有更舒适的方法?相信你也会知道我的回答——有!FxCop就是为这个目的而来的。它内置类一套标准,这套标准是一套通用的微软推荐的标准,如果你有中文版的.NET SDK文档,你可以去.NET Framework SDK\参考\类库开发人员设计指南 那里找到中文版的标准说明,否则,你可以去到 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpgenref/html/cpconnetframeworkdesignguidelines.asp 这里查看英文版的说明。现在回到我们的FxCop话题,是不是开始有点心动了?想对FxCop的长相有更多的了解?没问题!
如果你想详细了解一下FxCop,推荐你看看FxCop的设计组的“面对面”解说——MSDN TV:Code Correctness with FxCop: http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20031204FxCopMM/manifest.xml 。现在想下载来试一下吗?马上满足你的要求: http://www.gotdotnet.com/team/fxcop。 5. 对.NET开发有了一定了解的你应该知道ILDASM的强大功能了吧!ILDASM几乎成为.NET开发人员必备的工具了,用处多多我就不多说了,今天要为大家介绍的是一个类似于ILDASM的.NET Reflector。一个惊喜的发现是.NET Reflector不但可以把.NET Assembly反汇编成IL,还可以反汇编成你选择的它支持的一种高级语言,例如C#!厉害吧!但是,技术是一把双刃刀,可千万别把它用在不应该的地方哟 :) ? 心动不如行动,下载地址就在这里: http://www.aisto.com/roeder/dotnet 。
6. 用过Java的人差不多都知道Ant的大名吧!.NET上面也有一个对应的叫做NAnt的好东东哟!什么?你还不知道它是用来干什么的?那就请到他的官方网站看看吧!官方那里第一句正文已经很明白的说出了NAnt的用处:NAnt is a free .NET build tool. 噢,忘了给地址:http://nant.sourceforge.net/ :)这里给出一个示范代码: <?xml version="1.0"?> <project name="NUnit Example" default="build" basedir="."> <description>The NUnit Example Project</description> <property name="debug" value="true"/> <target name="build" description="compiles the source code"> <csc target="library" output=".\bin\debug\NUnitExample.dll" debug="${debug}"> <references> <includes name="C:\program files\NUnit V2.1\bin\ NUnit.Framework.dll" /> </references> <sources> <includes name="HashtableTest.cs"/> </sources> </csc> </target> </project>
如果你没有Visual C# .NET,你大可以使用命令行界面以及CSC.exe,只需要在源代码所在的目录的命令提示符下键入csc Complex.cs /doc:Complex.xml[Enter],就可以生成XML注释文件了。下面看看生成的文件: Complex 提供复数的相关操作服务。 默认构造器,将复数的实部与虚部分别设置为0; 分别将复数的实部与虚部设置为指定的值。 把复数转换为对应的字符串形式。 返回(X)+(Y)i的形式的字符串。 复数的实部。 复数的虚部。 接下来我们怎么利用这个生成的XML呢?很简单使用我们这次介绍的主角——NDoc,先去http://ndoc.sourceforge.net/下载,安装,然后运行NDoc。点击Add添加生成的Dll或者Exe程序集,以及相关的XML文档文件。然后选择Build来生成文档文件,而且生成的文件还可以选择类型。
7. 喜欢C#的朋友一定见识过C#的XML文档注释(XML Comments),但是我们可能还没有充分利用这一项功能,顶多,我们仅仅把它跟其他类型的注释等同起来,在代码的页面给出一些说明或者代码功能描述,充其量只是新颖一点,正式的代码描述文档工作还是要另外用Word或者什么来处理。慢着!有没有想过这两者可以结合一起?我的意思是,在源代码上面进行注释,然后直接导出到XML,再加上一些处理成为HTML文档?为了说明问题,我写了一个简单的代码: using System; using System.Globalization; namespace MathUtils { /// <summary> /// 提供复数的相关操作服务。 /// </summary> public sealed class Complex { /// <summary> /// 默认构造器,将复数的实部与虚部分别设置为0; /// </summary> public Complex() { _Real = 0; _Imaginary = 0; } /// <summary> /// 分别将复数的实部与虚部设置为指定的值。 /// </summary> /// <param name="real"></param> /// <param name="imaginary"></param> public Complex(int real, int imaginary) { _Real = real; _Imaginary = imaginary; } private int _Real; /// <summary> /// 复数的实部。 /// </summary> public int Real { get { return _Real; } set { _Real = value; } } private int _Imaginary; /// <summary> /// 复数的虚部。 /// </summary> public int Imaginary { get { return _Imaginary; } set { _Imaginary = value; } } /// <summary> /// 把复数转换为对应的字符串形式。 /// </summary> /// <returns> /// 返回(X)+(Y)i的形式的字符串。 /// </returns> public override string ToString() { return String.Format(CultureInfo.InvariantCulture, "{0} + {1}i", _Real, _Imaginary); } } } 如果你有Visual C# .NET,那么你可以轻松的使用一下的步骤:在解决方案管理器中右键单击该项目图标,选择属性 |?配置属性 | 生成,在[输出]的[XML 文档文件]右边填入目标XML文件的文件名,这里采用Complex.xml。保存设置并关闭该对话框,生成该项目,你将会在项目的根目录中找到这个XML文件。 图见上面
如果你没有Visual C# .NET,你大可以使用命令行界面以及CSC.exe,只需要在源代码所在的目录的命令提示符下键入csc Complex.cs /doc:Complex.xml[Enter],就可以生成XML注释文件了。下面看看生成的文件: Complex 提供复数的相关操作服务。 默认构造器,将复数的实部与虚部分别设置为0; 分别将复数的实部与虚部设置为指定的值。 把复数转换为对应的字符串形式。 返回(X)+(Y)i的形式的字符串。 复数的实部。 复数的虚部。 接下来我们怎么利用这个生成的XML呢?很简单使用我们这次介绍的主角——NDoc,先去 http://ndoc.sourceforge.net/ 下载,安装,然后运行NDoc。点击Add添加生成的Dll或者Exe程序集,以及相关的XML文档文件。然后选择Build来生成文档文件,而且生成的文件还可以选择类型。
如果你没有Visual C# .NET,你大可以使用命令行界面以及CSC.exe,只需要在源代码所在的目录的命令提示符下键入csc Complex.cs /doc:Complex.xml[Enter],就可以生成XML注释文件了。下面看看生成的文件: Complex 提供复数的相关操作服务。 默认构造器,将复数的实部与虚部分别设置为0; 分别将复数的实部与虚部设置为指定的值。 把复数转换为对应的字符串形式。 返回(X)+(Y)i的形式的字符串。 复数的实部。 复数的虚部。 接下来我们怎么利用这个生成的XML呢?很简单使用我们这次介绍的主角——NDoc,先去 http://ndoc.sourceforge.net/ 下载,安装,然后运行NDoc。点击Add添加生成的Dll或者Exe程序集,以及相关的XML文档文件。然后选择Build来生成文档文件,而且生成的文件还可以选择类型。
这段代码不知道为什么无法正常显示出来
就这样,我们就生成了一个文档,这里我选择MSDN文档类型: