张三:假如我们自己开发了一个类库,怎么做一个方便阅读的文档呢?

李四:一个方法一个方法地写呗,就像写Excel文档一下。

张三:啊,你out了,这多慢呀。为什么不玩玩doxygen工具,它能帮你生成文档?

李四:这么爽,什么东东,给说讲讲。

1.
Doxygen, what?

Doxgen就是大名鼎鼎的文档生成工具,而且是免费开源的,它使用非常方便,能提取C++,Java,Objective-C,Python,IDL,PHP,C#等语言的注释,从而生成文档。

你可以访问其官方网站,下载安装包,它的官网上有详细的使用手册。

http://www.doxygen.nl/index.html

支持的主要语言格式

Extension Language
.idl IDL
.ddl IDL
.odl IDL
.java Java
.cs C#
.c C
.cpp C++

可产生出来的文档格式有:

  • HTML
  • XML
  • LaTeX
  • RTF
  • CHM

要让工具能提取注释,那么就要求你写的注释要按照一定的规则来写,不能乱写,不然该工具是无法识别的,通常在Java中,只要JavaDoc能识别的,doxgen也能识别。

2.
安装Doxygen

我们可以在这个网址去下载最新的安装包

http://www.doxygen.nl/download.html#latestsrc

安装过程就不用说了,很简单,直接Next,最后Finish就OK了。

3.
配置Doxygen

配置doxgen是最核心的,你可以设置你要提取注释的源文件,生成的文档格式,工程名称,文档的Logo等信息,这些配置是可以存储起来的,当你的源代码更新后,重新再运行这个配置文件,就可以重新生成一个新的文档。

在安装后,进入到其安装目录下的bin文件夹,它里面有两个文件:doxygen.exe和doxywizard.exe,我们先运行doxywizard.exe来进行配置,从而生成配置文件(如果是第一次运行)。

图1,Doxygen配置主界面。

1,Doxygen工作目录,就是用来存储配置文件的目录。

2,递归搜索目录需要选上。

图2,选择输出文档格式

图3,生成类图

图4,选择文档的编码格式。

说明:编码格式,UTF-8 是首选。如果需要显示中文则选择GB2313。

图5,设置提取的范围。

图6,设置源码的格式。

图7,设置生成CHM文件属性。

图8,配置完成后,点击"Run doxygen"来运行配置,最后,点击File->Save存储配置文件,下次就不用再配置了。

4.
输出文档示例

下面的图片示例了输出的文档格式(HTML),很简单实用,同时还能支持Search。 

图9,列出所有的包名。

图10,具体某一个类的详细注释,可以列出所有的公有方法,你的代码注释写得越详细,那么生成的文档也就越详细。

开发文档生成工具----强大的Doxygen工具使用手册的更多相关文章

  1. js开发文档生成工具jsdoc安装使用

    1.全局安装jsdoc,需要先安装node环境哦~ npm install -g jsdoc 2.在项目根目录新建文件conf.json,内容如下: { "tags": { &qu ...

  2. PJSUA2开发文档--第十二章 PJSUA2 API 参考手册

    12 PJSUA2 API 参考手册 12.1 endpoint.hpp PJSUA2基本代理操作.  namespace pj PJSUA2 API在pj命名空间内. 12.1.1 class En ...

  3. [技巧]使用Xcode集成的HeaderDoc自动生成注释和开发文档

    [技巧]使用Xcode集成的HeaderDoc自动生成注释和开发文档     Doxygen本来是一个很好的工具,可是我感觉在mac系统下,如果用doxygen最后生成的CHM文件感觉就不是那么恰当, ...

  4. 项目管理之 使用 appledoc 生成开发文档

    写项目时通常会遇到要求写开发文档的需求,但是就源代码来说,文档最好和源码在一起,这样更新起来更加方便和顺手.Objective-C 有一些文档管理工具,doxygen, headdoc 和 apple ...

  5. .NET6使用DOCFX自动生成开发文档

    本文内容来自我写的开源电子书<WoW C#>,现在正在编写中,可以去WOW-Csharp/学习路径总结.md at master · sogeisetsu/WOW-Csharp (gith ...

  6. 工具(5): 极简开发文档编写(How-to)

    缘起 一个合格的可维护项目,必须要有足够的文档,因此一个项目开发到一定阶段后需要适当的编写文档.项目的类型多种多样,有许多项目属于内部项目,例如一个内部的开发引擎,或者一个本身就是面向开发者的项目. ...

  7. windows下使用 ApiGen 生成php项目的开发文档

    之前使用 PHPDocument 生成过开发文档,但是界面看着不爽,遂尝试了 ApiGen 生成,不得不说界面看着舒服多了,下面说说安装和使用的方法. ApiGen官网: http://www.api ...

  8. So注入工具TsoInject开发文档

    So注入工具TsoInject开发文档 导语: 作为一个软件安全从业者而言,我们需要对某个App的关键函数就行Hook, 对于android而言,Smali层我们使用Xposed Hook框架,So层 ...

  9. jssip中文开发文档(完整版)

    jsSip开发文档 (官网地址:http://www.jssip.net/) 完整案例demo下载地址: http://download.csdn.net/download/qq_39421580/1 ...

随机推荐

  1. 原生JavaScript 封装ajax

    原生JavaScript 封装ajax   function myajax(options){ //新建一个局部对象 用来存放用户输入的各种参数 var opt={ type:options.type ...

  2. 【hdu 1533】Going Home

    [链接]http://acm.hdu.edu.cn/showproblem.php?pid=1533 [题意] 一个N*M地图上有相同数量的字符H和字符m,m代表一个 人,H代表一个房子.人到房子的花 ...

  3. 洛谷 P1571 眼红的Medusa

    P1571 眼红的Medusa 题目描述 虽然Miss Medusa到了北京,领了科技创新奖,但是他还是觉得不满意.原因是,他发现很多人都和他一样获了科技创新奖,特别是其中的某些人,还获得了另一个奖项 ...

  4. PHP版本 D-Link 动态域名客户端

    <?php /* * D-Link 动态域名客户端.主域名www.dlinkddns.com 和 www.dlinkddns.com.cn * 首先获取外网IP,若IP没有变化,则结束运行:否则 ...

  5. COCOS学习笔记--持续动作ActionInterval

    上一篇博客介绍了即时动作ActionInstant.与即时动作相对的是持续动作ActionInterval. 顾名思义,持续动作就是须要一段时间来持续运行的动作,而且在有限时间内改变运行对象的一些属性 ...

  6. Dcloud课程1 APP的架构有哪些

    Dcloud课程1 APP的架构有哪些 一.总结 一句话总结:B/S架构和C/S构架 1.APP的分类? 主流的四大APP系统:1.苹果ios系统版本,开发语言是Objective-C:2.微软Win ...

  7. ZOJ 2723 Semi-Prime ||ZOJ 2060 Fibonacci Again 水水水!

    两题水题: 1.如果一个数能被分解为两个素数的乘积,则称为Semi-Prime,给你一个数,让你判断是不是Semi-Prime数. 2.定义F(0) = 7, F(1) = 11, F(n) = F( ...

  8. equals、HashCode与实体类的设计

    equals和HashCode都是用来去重的,即判断两个对象是否相等.如果是String类则我们直接用.equals()判断,如果是我们自己定义的类,需要有自己的判断方法,重写equals,如果是集合 ...

  9. 使用Samba在Linux服务器上搭建共享文件服务

    最近我们的小团队需要在服务器上共分出一个共享文件夹用于大家存放公共的资源文档, 大家想啊,这肯定很简单呀,在Windows下面只要创建相关的windows account,共享某个文件夹,把读/写权限 ...

  10. POJ 1753 Flip Game DFS枚举

    看题传送门:http://poj.org/problem?id=1753 DFS枚举的应用. 基本上是参考大神的.... 学习学习.. #include<cstdio> #include& ...