代码分析工具推荐Understand
之前看ogitor ,第一次看到那么多代码~~不知道从哪里下手,而且好多东西都不会Ogre什么的都不是很清楚,对ogitor的代码结构的了解就更不用提了。晕头转向的 不知道从哪里下手,一点点的看起来好吃力。后来从博客中看到了说understand的 ,当时用了一下可以从源代码生成类图 感觉很不错。不过由于考试啊乱七八糟的原因放了一段时间之后又由于系统出了问题重装后把他弄丢了,今天想用结果怎么也找不到是什么,连名字都忘了 汗~~以后要及时记录啊 找了几乎一天终于又找回来了 呵呵感觉比rational rose好得多吧,rational rose 现在已经没有更新了 下了一个都感觉不好用 win7下直接打不开 纠结 这个understan 的ui使用qt开发的呢 呵呵
Understand
---- 源代码分析&度量
Understand™ 从度量、图表、依赖关系分析、代码检查、等各方面全面管理您的源代码。
Understand™主要特点
Understand度量
Understand™ 对所分析的代码进行高效的度量计算,其计算也可通过命令行自动运行,同时支持表格导出、图形显示以及GUI动态浏览;另外,更可以通过 Understand Perl API进行度量的自定义。通过Understand,还可以产生项目级(包含文件、类、函数或系统架构)的报告。
代码检查
Understand检查您的代码是否符合代码的国际标准(如MISRA-C 2004,MISRA-C++ 2008等),或者您自己自定义的检查标准,如企业的代码规范等。
代码编辑器
Understand提供了可以维护和理解您的代码的编辑器,通过其浏览、对比(文件/目录对比,‘微’对比 – 如字符级对比)您的源代码,可以更容易、更高效的进行代码的编辑;同时,该编辑器还支持自定义的设定,满足开发人员的工作需要。
依赖关系分析
Understand依赖关系浏览器具备以下特点:
- 文件及结构依赖关系快速浏览
- 依赖/被依赖关系、Butterfly图(文件/架构)
- 依赖关系图表导出
- 最新设计的依赖关系浏览Dock显示所以的依赖信息
Understand可以生成各种依赖关系图表(如整体架构的继承关系、子系统的继承关系等),
其结果可以保存为PNG、JPEG、SVG等,更可以直接保存为VISIO文件。
Understand依赖关系信息可以导出为CSV文件以备您进行进一步的分析。
即时搜索
通过Understand的即时搜索能力,您可以在上百万行的代码中立刻找到您需要的信息。
多种图表
Understand支持各种图表的生成,所有的图表您都可以将其保存成图片格式作为更广泛的编辑用途。通过Understand,您可以生成下列图表:
- 声明关系图
- 继承关系图
- 控制流图
- 依赖关系图
- UML类图
- 树形关系图
- 自定义图表
代码信息
- 通过Understand的信息浏览器,你可以看到相关代码实体所有详细信息。
- 代码上下文信息显示
- 自动化:通过Understand提供的相应命令,您可以快速的创建、分析项目和产生报
告,同时可以将Understand与您的构建系统进行集成,自动完成所以代码的分析。
报告
Understand支持各种报告的生成,根据您项目的开发语言,基本可以生成如下几类报告:
- 交叉引用报告
- 架构分析报告
- 质量报告
- 度量报告
- 客户自定义报告
支持的语言
Understand支持:Ada, C/C++, C#, FORTRAN, Java, JOVIAL, Pascal, PL/M, VHDL, Cobol, Web Languages (如PHP, HTML, CSS, Javascript和XML等)。
即使您的项目同时包含多种语言,Understand也可以进行分析。
支持的操作系统
Understand支持:Microsoft Windows (32位、64位),Linux (32位、64位),Solaris Sparc,Solaris X86,Mac OSX。
引用自http://www.emenda.eu/index.php?option=com_content&view=article&id=44&Itemid=22&lang=zh
推荐】强大的代码阅读工具Understand
4
个附件_http://www.scitools.com/products/understand/
Understand软件的功能主要定位于代码的阅读理解。界面貌似是用Qt开发的。
具备如下特性:
1、支持多语言:Ada,
C, C++, C#, Java, FORTRAN, Delphi, Jovial, and PL/M ,混合语言的project也支持
2、多平台:
Windows/Linux/Solaris/HP-UX/IRIX/MAC OS
X
3、代码语法高亮、代码折叠、交叉跳转、书签等基本阅读功能。
4、可以对整个project的architecture、metrics进行分析并输出报表。
5、可以对代码生成多种图(butterfly
graph、call graph、called by graph、control flow graph、UML class
graph等),在图上点击节点可以跳转到对应的源代码位置。
6、提供Perl
API便于扩展。作图全部是用Perl插件实现的,直接读取分析好的数据库作图。
7、内置的目录和文件比较器。
8、支持project的snapshot,并能和自家的TrackBack集成便于监视project的变化。
小技巧(官网的FAQ里有):
1、设置字体和颜色风格
修改默认字体:Tools
-> Options -> Editor -> Default style
修改颜色: Tools -> Options
-> Editor ->
Styles
2、生成UML类图、调用树图
默认安装的插件不支持这两种图,需要从官网下载插件。
_http://www.scitools.com/perl_scripts/uperl/uml_class.upl
_http://www.scitools.com/perl_scripts/uperl/invocation.upl
放到sti/conf/scripts/local目录下。
然后重新运行,执行
project-> project graphical views ->
xxxx可以生成这两种图。
3、更改图的字体
直接修改对应的脚本文件(\Program
Files\STI\conf\scripts目录下),在do_load(
)函数的对应位置加入如下的设置:
$graph->default("fontname","Consolas","node");
$graph->default("fontsize","10","node");
$graph->default("fontname","Consolas","edge");
$graph->default("fontsize","10","edge");
注意:有的脚本中的作图变量名不是
$graph 而是 $g。
另外一款代码可视化理解工具: http://www.sgvsarc.com/prod_crystalrevs_screenshots.htm
代码分析工具推荐Understand的更多相关文章
- C++静态代码分析工具推荐——PVS-Studio
长假归来,最近一直没更新,节前本来就想写这篇了,一直到今天才有时间. 关于静态代码分析在维基百科上可以查到很详细的介绍:https://en.wikipedia.org/wiki/List_of_to ...
- 阅读代码分析工具Understand 2.0试用
Understand 2.0是一款源码阅读分析软件,功能强大.试用过一段时间后,感觉相当不错,确实能够大大提高代码阅读效率. 因为Understand功能十分强大,本文不可能详尽地介绍它的全部功能,所 ...
- Eclipse插件(导出UML图,打开文件资源管理器插件,静态代码分析工具PMD,在eclipse上安装插件)
目录 能够导出UML图的Eclipse插件 打开文件资源管理器插件 Java静态代码分析工具PMD 如何在eclipse上安装插件 JProfiler性能分析工具 从更新站点安装EclEmma 能够导 ...
- Android 静态代码分析工具
简评: 作者在文中提到的三个静态代码分析工具不是互相替代的关系,各有各的侧重点,如果有需要完全可以同时使用. 静态代码分析是指无需运行被测代码,仅通过分析或检查源程序的语法.结构.过程.接口等来检查程 ...
- Android代码分析工具lint学习
1 lint简介 1.1 概述 lint是随Android SDK自带的一个静态代码分析工具.它用来对Android工程的源文件进行检查,找出在正确性.安全.性能.可使用性.可访问性及国际化等方面可能 ...
- 常用 Java 静态代码分析工具的分析与比较
常用 Java 静态代码分析工具的分析与比较 简介: 本文首先介绍了静态代码分析的基 本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBu ...
- 来试试这个来自静态代码分析工具PVS Studio提供C++的小测验吧
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:来试试这个来自静态代码分析工具PVS Studio提供C++的小测验吧.
- Cppcheck 1.54 C/C++静态代码分析工具
Cppcheck是一个C/C++代码分析工具,只检测那些编译器通常无法检测到的bug类型. 官方上建议让编译器提供尽量多的警告提示:1.使用Visual C++的话,应使用警告等级4 2.使用GC ...
- [转载] 常用 Java 静态代码分析工具的分析与比较
转载自http://www.oschina.net/question/129540_23043 简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代 ...
随机推荐
- Nearest Common Ancestors(LCA板子)
题目链接:http://poj.org/problem?id=1330 Nearest Common Ancestors Time Limit: 1000MS Memory Limit: 1000 ...
- (转)MySQL- 5.7 sys schema笔记,mysql-schema
原文:http://www.bkjia.com/Mysql/1222405.html http://www.ywnds.com/?p=5045 performance_schema提供监控策略及大量监 ...
- springboot整合mybatis(映射文件方式和注解方式)
springboot作为一个微服务框架,给我们开发人员提供极大的便利,秉着约定大于配置的原则,通过starter包的形式为我们做了许多默认的配置,在进行数据持久化到关系型数据库时,我们一般都会首选sp ...
- web测试工具总结
纯粹的手工测试早已不满足如今的项目需求,各种测试工具的应用早已成为普遍趋势.如何选取合适的工具来完成对应的测试工作?本文将针对Web测试,列举 一些推荐的测试工具,并加以简单介绍. (每个工具的实际 ...
- 已有插件支持requirejs
define(["jquery"], // Require jquery function($){ //把你原来的插件代码放这里吧,这样就行了 //注意文件命名 }) ...
- execution(* *..BookManager.save(..))的解读
execution(* *..BookManager.save(..))的解读: 第一颗* 代表ret-type-pattern 返回值可任意, *..BookManager 代表任意Pacakge里 ...
- MySql的存储引擎介绍
下面主要介绍InnoDB.MyISAM和MEMEORY三种存储引擎. InnoDB存储引擎 InnoDB遵循CNU通用公开许可(GPL)发行.InnoDB已经被一些重量级互联网公司所采用,如雅虎.Sl ...
- MySQL事务实现原理
MySQL事务隔离级别的实现原理 知识储备 只有InnoDB支持事务,所以这里说的事务隔离级别是指InnoDB下的事务隔离级别 隔离级别 读未提交:一个事务可以读取到另一个事务未提交的修改.这会带来脏 ...
- Mac新手问题
[现象:]MAC下checkout代码时,报svn:E170013-unable to connect to a repository at url xxx, svn:E1700113: unable ...
- React项目的打包
1.create-react-app 来自Facebook官方的零配置命令行工具.create-react-app是来自于Facebook出品的零配置命令行工具,能够帮你自动创建基于Webpack+E ...