图形化代码阅读工具——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是一个跨平台的 ( ...
随机推荐
- sublime 3 build结果关闭打开
Tools > Build Results > Show Build Results
- HDU1556(树状数组)
Color the ball Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
- C++ 头文件系列(vector)
简介 vector头文件包含vector的类模版以及该模版的显示特化版本vector< bool >. vector是C++容器库中非常通用的一种容器,如果你不知道该决定使用哪一种容器,或 ...
- ArcGIS API for JavaScript 4.2学习笔记[2] 显示3D地图
3D地图又叫场景. 由上一篇可知, require入口函数的第一个参数是字符串数组 ["esri/Map", "esri/views/MapView", &qu ...
- LPC4370使用学习:GPIO的引脚功能使用,和12864OLED模拟I2C驱动
一: 手中有块LPC4370的开发板,因为便宜,所以引脚引出的不多,而且只有基本的底板资源驱动代码和例程. 看着手册和例程看了老半天,写程序写了半天,结果GPIO老是驱动不起来,因为引脚配置寄存器中有 ...
- WinForm 更换主窗体的例子
做一个登录窗口,登录成功时关闭form1,展示from2界面 1.主界面Login namespace WindowsFormsApplication1 { public partial class ...
- c#中读取数据库bit布尔字段数据转换Int和bool时的错误
数据库里bit这个布尔类型的字段,非常实用,但是在c#里读取时,许多人喜欢犯一些错误,导致运行报错. 实际中,有效的正确读取方法只有以下两种: int xxx= Convet.ToInt16(read ...
- Git 和 GitHub 使用
Git和GitHub的使用 Git是一款免费.开源的分布式版本控制系统. GitHub托管远程仓库,并提供一个web界面. 有2种协议支持从本地push代码到远程仓库. 一种是http,需要输入用户名 ...
- [转]CentOS 6.3下Samba服务器的安装与配置
一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的 ...
- web前端面试题及答案
1.常用那几种浏览器测试?有哪些内核(Layout Engine)? 答: (Q1) 浏览器:IE,Chrome,FireFox,Safari,Opera. (Q2) 内核:Trident,Ge ...