图形化代码阅读工具——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是一个跨平台的 ( ...
随机推荐
- 上传预览 easyui部分控件获取focuse 表单验证
js: $(document).ready(function () { //$('#creater').combobox({ // url: '/VMS.UI/BindData/ScheamData? ...
- WPF中将16进制颜色码转换成SolidColorBrush
使用ColorConverter.ConvertFromString(string colorValue)方法 例如:new SolidColorBrush((Color)ColorConverter ...
- spring mvc 返回页面数据
handler package com.stone.controller; import java.util.Map; import javax.servlet.http.HttpServletReq ...
- Android 自定义Activity栈对Activity统一管理
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6307239.html public class AppManager { private static St ...
- Java中的==、equals、hasCode方法
== java 的数据类型分为“基本数据类型” 和“引用数据类型”在基本数据类型的比较中,== 比的就是基本数据类型变量中所保存的值在引用数据类型的比较中,== 才比较的是变量所指向的对象的地址. e ...
- 双击startup.bat启动tomcat时闪退原因及解决方案
在启动免安装tomcat时,很容易遇到双击startup.bat,启动窗口闪退而tomcat服务未启动的状况. 具体原因:tomcat在启动时,需要读取环境变量和配置信息,如果缺少Java环境,即缺少 ...
- linq左连接查询加上into后怎么查询右表是否为空
//判断右表是否为空并为映射表进行赋值标志var query=from q in product join m in favProduct on q.Name equals m.Name into t ...
- 自己动手系列——实现一个简单的LinkedList
LinkedList与ArrayList都是List接口的具体实现类.LinkedList与ArrayList在功能上也是大体一致,但是因为两者具体的实现方式不一致,所以在进行一些相同操作的时候,其效 ...
- Boost.Hana在visual studio 2017 rc中的残缺使用
最新的visual studio还不支持hana,不知道vs2017正式版本出后会不会支持.等不及了,先用rc版试试吧. 1.从https://github.com/boostorg/hana下载或拉 ...
- mongodb终端指令
-h [--help]显示此使用信息 --version显示版本信息 -f [--config] arg配置文件指定 ...