加速代码文档的编制

ZDNet软件频道 时间:2003-12-08 作者:ZDNet China |  我要评论()
本文关键词:文档 文档编制 javatips
众所周知,文档编制在软件项目中是一个至关重要的部分。它贯穿整个项目并应该得到足够的维护。不幸地是,一个文档的编制很复杂,需要耗费大量的时间而本文将告诉您一个好的方法。
本文译自Builder.com,未经许可请勿转载众所周知,文档编制在软件项目中是一个至关重要的部分。它贯穿整个项目并应该得到足够的维护。不幸地是,一个文档的编制很复杂,需要耗费大量的时间,所以它成为了软件开发人员的负担,这样就使文档编制变得不完整并且不能和程序同步修改。源代码文档编制是整个代码进程中一个重要的一部分,在这个进程中,需要利用到javadoc工具。利用一个简单的文本编辑器和一个正确的项目目录结构,这个工具可以帮助你加速和改善代码文档编制

项目目录结构

一个正常的软件项目有一系列的文档,比如需求,规格说明,测试和一个和系统开发人员工作有关的集成计划。让我们来看看一个适合开发项目的典型的目录结构:

 

  /prj-1
       /classes
       /doc
       /resources
       /spec
       /src
       spec.html

   /class目录存储编译Java类文件,/dos有文档编制,/resources是项目资源,/spec是项目文档编制,/src是Java源文件。Spec.html是一个映射文件,我将在后面讨论它。

   或者,这个目录结构可以象下面这样编写,此时,和项目相关的文档编制被放置在比源代码更高一级的地方。

    /prj-2
/code
/classes
/doc
/resources
/src
spec.html
       /spec

       这种结构的好处就是它很容易的被封装,因而可以从/src目录中设置地址,源文件被存放在这个目录中,这两个结构都可以正常的工作。在这篇文章下面的例子中,我们使用第一种目录结构。

使用目录结构

假设你已经完成了一个算法,这个算法在规格说明中进行了彻底地解释,现在你想要文档编制这个代码。你可以提供一个连接,使它连接说明的原始地方,这样就替代了重复的解释算法。这样就使代码编制变得更快,它不需要复写原始信息并可以同步的保持代码内容。

源文件和项目文档的连接被放置在/spec目录中,你需要利用HTML和Javadoc来创建这个连接。连接可以指向存储于不同格式的文档,这些格式可以通过你的浏览器被浏览。

/**
*  Process a customer order according to the
*  <a href="../spec/specification.html#cust-order-proc">specification</a> and
*  <a href="../spec/requirements.rtf">requirements</a>
*/

public void processCustomerOrder() {
...

}
/**
*  Creates and sends
*  <a href="../spec/specification.html#cust-order-diag-resp">
*  a response message</a> according to
*  <a href="../spec/specification.html#cust-order-diag">a customer request</a>
*/

public void generateCustomerResponse() {
  
}

如果文档编制和源代码一起都是分布式的,那么使用这个方法是非常有效的。但是,如果这样做,源代码的注释将要加上一个特别的文档编制名和它的位置,改变它们中任何一个其他的也要改变。

为了纠正这个确定,你仅仅需要在源代码和特殊文档中的连接提供一个映射,这个过程通过映射文件可以非常简单的完成。比如,spec.html包含了在源代码中连接用户名和文档中实际名之间的映射。你可以看看下面这个例子:

 

/**
*  Performs a complex calculation according to the
*  <a href="../spec.html#algorithm-1">algorithm</a>
*/

public void doComplexCalculation() {



 spec.html文件包含了下面的映射:

<a name="algorithm-1">
   <a href="spec/algorithms.html#1">Algorithm 1</a>
</a>
</p>
<p>
<a name="ant-ref">
   <a href="http://ant.apache.org">Apache Ant Java-based build tool</a>
</a>
</p>
<p>
<a name="common-properties">
   <a href="resources/prj-1.properties">Common Properties</a>

 连接程序表

    我们来看看另外一个例子,你需要一个地方来连接外部文档到你的源代码中,你想要的位置在更高级别设计文档,包括使用范例或者程序表。当你想要指定系统通信,交互作用或者和其他系统接口的时候,程序表是非常有用的。不幸地的是,你不能自动的在程序表中产生代码,也不能在程序表中重新设计源代码。因此,你需要同时保持程序表和源代码。如果你连接了一个程序表,这个过程就变得简单多了。比如,在这两个参与者中传递消息。假设你的程序表是简单的ASCII程序表,你可以按下面的步骤创建anchor:

Customer                                         Processor
   --------                                          ---------
      |                                                                      |
      | OrderRequest                                                    |
      |------------------------------------------------->            |
      |                                                                      |
      |                                                                      |
      |                                                                      |
      |                                                                      |
      | <a name="cust-order-diag-resp">OrderResponse</a>  |
      |<-------------------------------------------------            |
      |                                                                      |

接着,通过spce.html连接映射文件。

象上面这种方式安排文档编制的进程是比较简单,合理的。因为它仅仅需要一个文本编辑器和Javadoc工具。



责任编辑:李宁

欢迎评论投稿

百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134