怎么说呢,即使是在没有ms参与的时候,我们还是有很多好的开源项目可用,例如nant,ndoc。但是或许就是因为开源的关系,我们从来不考虑赞助一点点资金——当然就我个人的情况,我不知道怎么用我的银行户头把钱汇过去。可是时间一长,这些项目就逐渐的淡出了我们的视线,仅仅停留在古老的版本上面的。也就这个时候,ms才记得要自己搞出一些东西平息程序员的怒火。在这类软件中,首先要说的当然是.net 2.0自带的msbuild。但是这里想重点谈的就是sandcastle。
什么是sandcastle?
具体的信息在这里可以看到。
在发布vs2005之前,ms内部开发了一个用于生成帮助文档的工具。这就是sandcastle的前身。但是当时编译一次文档就需要十多个钟头——好家伙,真是够长。当然,后来发布的sandcastle由于做了很大的优化,就只要30分钟了。(看得出来ms内部的开发流程也是十分agile的,现有成果,然后才作重构和优化的。)
当然,现在的sandcastle经历了几个ctp版本的测试已经比较成熟了。
sandcastle同ndoc的比较
由于ndoc项目终结了,所以一直没有机会达到.net 2.0完全支持的地步。另外,ndoc还是msdn 2003的风格,同vs2005漂亮的样式稍有差距。但是下面这些特点是sandcastle一直缺乏的。
1. javadoc,latex的支持。这个也不知道会不会在后期加入。我特别喜欢的就是latex的支持。ndoc生成的latex文档十分的漂亮。
2. 官方的gui工具。现在我使用的gui工具还是sandcastle help file builder(shfb)。ms官方仅仅提供了全部的命令行工具。
3. 将来似乎会被加入到vssdk里头,这样想仅仅安装sandcastle似乎就麻烦了一点。
我的选择
今年11月之前我一直使用的是ndoc。很显然,cbc还处于.net 1.1的平台上面,ndoc的工作就很好了。但是,面临着ndoc没有更新的情况,我迟早也会转入sandcastle的上面。促使这一个过程加速的重要原因,就是shfb了。由于这个界面同ndoc别无二致,隐藏了全部细节,十分方便ndoc的用户转到这一新的工具上面。另外,由于该工具还提供十分方便的命令行版本,可以集成到nant或者msbuild脚本中,所以我还不犹豫的将cbc的文档全部放心的交给了它来处理。
现在唯一的希望就是ms可以继续发布独立于某个sdk的sandcastle才好。免得我每次需要下载很多不需要的东西。
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!


