天天看点

C++基础学习之13 - 可视化设计

        讲到C++的可视化设计,一般都会想到 类图、流程图、交互图、部署图等,没错,UML设计是C++代码设计之前的必选项(当然对于产品经理们更关注UI,他们更愿意使用Axure),但是这些不是我们所关心的,本节我们要谈的是系统开发完成以后的设计图、文档。

        这些内容可以通过UML给出吗?当然可以,但我相信大多数人无法做到这一点,因为在开发过程中大部分的设计早已面目全非,想保持同步的更新?(做梦吧!)

        你需要三个工具:

        Doxgen 大名鼎鼎的代码文档工具,下载地址:http://www.stack.nl/~dimitri/doxygen/

        Graphviz 贝尔实验室的一个开源绘图工具,通过dot语言编写绘图脚本,下载地址:http://www.graphviz.org/Download..php

        HTMLHelp 这个是可选项了,生成HTML文档、CHM文档的辅助工具,不作为本节介绍内容。

        我们先来看 GraphicViz 的使用方式。

$ cat 1.dot

digraph G {
    main -> parse -> execute;
    main -> init;
    main -> cleanup;
    execute -> make_string;
    execute -> printf
        init -> make_string;
    main -> printf;
    execute -> compare;
}
           
C++基础学习之13 - 可视化设计

        回头再来看 Doxgen,Linux下安装比较简单,我们可以输入命令行:

sudo apt-get install doxygen 
sudo apt-get install graphviz
           

        当然在 Windows 下安装更方便,只需要双击 下载下来的exe,这个就不用我教了吧,呵呵。

        那接下来让 Doxgen 生成文档图吧,打开传说中的 Doxgen。

C++基础学习之13 - 可视化设计

        选择你需要生成的文档,确定选项,直接进行代码生成。

        Doxgen生成文档的依据就是注释,我们来看一下常用的 注释格式:

/** 头文件定义
* @file ClassName.h
* @brief 常见类型定义
* @author Linolzhang
* @date     2017-1-1
* @version  0.1
* @copyright Linolzhang
*/

/** 代码段定义*/
#define CODE_LEVEL 2
#define NAME "Linolzhang"

const int Count = 20; /**< 单行定义-后缀方式*/

/** 函数定义
* @param[in] a 输入a,整形
* @param[in] b 输入b,整形
* @param[out] c 输出
* @return 返回值, 0正确,1错误
* @ref 参考Types.h
* @note 注意:仅支持<1024的加法
* @see 注意事项 
*/
int add(int a,int b,int& c);
           

继续阅读