首页 > 编程知识 正文

depends如何使用,depends depends

时间:2023-05-04 05:51:08 阅读:218598 作者:468

Depends是个开源软件,刚发现,试用之后,效果惊艳。

它可以分析代码依赖关系。作为一个基础工具,仅仅提供了命令行。但通过graphviz(亲测可用),plantuml,DV8这些开源或者商业的工具,能基于depends的数据进行输出。

Depends生成的数据,直接进行展示,有时会出现线过多根本看不清的问题,如下图:

 

为此做了一个优化工具depends_opt,通过它可以优化数据,然后再提交给graphviz展示。

有关的使用方法及depends_opt,见附。

在实际项目中,选取了2个模块的代码,进行分析,示意如下:

 

 

 

 

提供简单使用说明,方便整理出代码模块关系图,从而能直观感受模块的当前状态,希望能对模块改进有所帮助。

约定:

以文件为最小单位,而不是以函数为最小单位。(这应该是depends的要求)

使用方法:

使用depends分析代码

java -jar toolsdepends.jar --auto-include --format=dot cpp f:...VirtualGponOnu ponup_gpon

正常的话,会生成 ponup_gpon.dot

优化分析结果

toolsdepends_opt ponup_gpon.dot 20

正常的话,会生成 ponup_gpon_2.dot

过程中,会打印出调用次数过大的扇入扇出文件名称。

使用graphviz展示

首先安装graphviz。

使用 GVEdit 打开 ponup_gpon_2.dot,就能看到展示图了。

通过 菜单graph -- setting 可以根据需要生成 png/pdf 等格式的文件。

注意事项:

Java建议安装最新的版本。Pdf文档非常宽,建议使用foxit打开。上文粗体字,使用时需要根据自己的情况修改。在展示方面,因为graphviz不接受”.”,所以,.h ,.c 以 _h, _c 显示。

 

附:

Depends  https://github.com/multilang-depends/depends/releases/Graphviz  http://graphviz.org/

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。