图形化代码阅读工具——Scitools Understand
Scitools出品的Understand 2.0。用了很多年了,比Source Insight强大很多。以前的名字叫Understand for C/C++,Understand for Java,Understand for Ada,最近这几年合并成了一个产品。
最值得一提的是各种关系图的绘制,以及在这些图上的交互操作:Declaration Graphs / Hierarchy Graphs / Control Flow Graphs / Dependency Graphs / UML Class Diagram。事实上图形化的分析功能,是我阅读代码中用到最多的。如果只需要代码高亮+全局符号跳转这样的功能,VS2010+VisualAssist,Xcode3/4,eclipse这些IDE本身已经做的足够好了,不需要额外的代码阅读工具。
不客气的说,Source Insight的图形分析功能在Understand面前就是个玩具。
另外一点是对多语言的支持,主流的C/C++,Java,C#就不说了,另外还支持Ada/FORTRAN/Pascal/Cobol/PHP/HTML/CSS等等一堆语言。当然,C++/Java/C#之外的语言用的比较少,不太清楚这些对语言的支持程度是否能够达到和主流语言的相同水平。
除此之外这个软件是跨平台的,Windows/Linux/MacOS/Solaris都支持。现在不少团队都需要同时维护多个Mobile平台,多个Desktop平台,或者Client端/Server端的程序。运行在多个平台上的代码阅读/分析工具对这样的团队应该会很有吸引力。
当然Source Insight也有非常强的地方,那就是能够支持异常复杂的高亮方案,除了颜色,还能指定不同的字体/字号/粗体/斜体。但是在我看来,这个feature似乎用处不大,因为最有益于工作效率的高亮方案,应该和你在IDE中一致的代码高亮方案。这样在IDE和代码阅读器之间切换时,才不需要动脑筋去切换方案。大脑对于常量/变量/类型/方法的识别,一切都应当在下意识中完成。
比较不幸的是,据我观察,这款软件在国内的认知率似乎并不是很高。一方面的原因可能是因为GUI的控件为了跨平台,无法做的很漂亮,另一方面的原因,可能是因为这个名字的缘故。相对于Source Insight而言,Understand这个搜索关键字实在是太容易被埋没了。
希望能有更多的开发者喜欢上这款软件。
图形化代码阅读工具——Scitools Understand的更多相关文章
- 代码分析工具推荐Understand
之前看ogitor ,第一次看到那么多代码~~不知道从哪里下手,而且好多东西都不会Ogre什么的都不是很清楚,对ogitor的代码结构的了解就更不用提了.晕头转向的 不知道从哪里下手,一点点的看起来好 ...
- [.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit
[.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit 读前必备: 接上篇: 分布式版本控制系统Git——使用GitS ...
- MariaDb数据库管理系统学习(二)使用HeidiSQL数据库图形化界面管理工具
HeidiSQL 是一款用于简单化的 MySQL server和数据库管理的图形化界面.该软件同意你浏览你的数据库,管理表,浏览和编辑记录,管理用户权限等等.此外,你能够从文本文件导入数据,执行 SQ ...
- zookeeper图形化的客户端工具
追加一个zookeeper图形化的客户端工具: 1.zookeeper图像化客户端工具的下载地址:https://issues.apache.org/jira/secure/attachment/12 ...
- 看图写代码---看图写代码 阅读<<Audio/Video Connectivity Solutions for Virtex-II Pro and Virtex-4 FPGAs >>
看图写代码 阅读<<Audio/Video Connectivity Solutions for Virtex-II Pro and Virtex-4 FPGAs >> 1.S ...
- 品味性能之道<六>:图形化SQL分析工具
在上一章里,重点分享了命令行SQL分析工具的使用方法.在本章将重点分享PL/SQL的SQL分析工具. 一.如何打开PL/SQL执行计划 开启PL/SQL这工具,推荐如下方法: 点击 ...
- zookeeper系列(一)zookeeper图形化的客户端工具
追加一个zookeeper图形化的客户端工具: 1.zookeeper图像化客户端工具的下载地址:https://issues.apache.org/jira/secure/attachment/12 ...
- Docker 图形化页面管理工具使用
一.Docker图形化工具 docker 图形页面管理工具常用的有三种,DockerUI ,Portainer ,Shipyard .DockerUI 是 Portainer 的前身,这三个工具通过d ...
- mysql workbench图形化mysql管理工具
MYSQL官网也推出了针对Linux的图形化的连接工具-MySQL Workbench.MySQL Workbench不仅仅是一个简单的MySQL客户端.简而言之,Workbench是一个跨平台的 ( ...
随机推荐
- HDU-1995-汉诺塔V
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1995 这题不知道该说水还是不水,对于这题我看到题目数据,就有了想法,因为题目数据给的好 所以我直接 假 ...
- GridView等表格模板列绑定数据的方法
//绑定GridView每一行中的CheckBoxList protected void GridView1_RowDataBound(object sender, GridViewRowEventA ...
- JQuery hover toggle事件使用
JQuery hover toggle事件使用: <%@ page language="java" import="java.util.*" pageEn ...
- .Net多线程编程—使用Visual Studio 2012进行调试
1 相关概念 1)栈帧 C语言中,每个栈帧对应着一个未运行完的函数.栈帧中保存了该函数的返回地址和局部变量. 栈帧也叫过程活动记录,是编译器用来实现过程/函数调用的一种数据结构. 2)单步执行与单步函 ...
- POJ2796(单调栈)
Feel Good Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 12987 Accepted: 3639 Case T ...
- 深入浅出 Java Concurrency 锁机制 : AQS
转载:http://www.blogjava.net/xylz/archive/2010/07/06/325390.html 在理解J.U.C原理以及锁机制之前,我们来介绍J.U.C框架最核心也是最复 ...
- ubuntu/deepin制作快捷启动图标
默认情况下系统所有的快捷方式放在/usr/share/applications,打开该目录会看到大量的.desktop文件,每个文件便是一个快捷方式. 有时我们需要自己安装软件,然后添加快捷方式.文件 ...
- .Net基础体系和跨框架开发普及
.net体系经过十几年发展,发生了很多变化.特别是在最近两年,随着开源和跨平台的发展,衍生出很多概念,像标准库,可移植库,.Net Core等,相信有不少同学对他们之间的关系是有一些困惑的,这里我从基 ...
- TV端:通过遥控器的点击实现图片的上下左右抖动的效果
做TV端有一段时间了,我看到别的TV上有一个通过遥控器的触摸板来控制一张图片的相应方向的抖动,感觉听新奇的,就试着做了一个分享一下: 转载注明出处:http://www.cnblogs.com/hyy ...
- js获取当前时间戳
当使用js时我们可以使用timestamp = (new Date()).valueOf();直接获取当前时区时间点的时间戳.注意:js中时间戳的单位是毫秒,而php中则是秒