系统:Ubuntu16.04 x64

安装

安装包

下载地址:

如果上述地址不能用,参考资料[2]中有更多的下载地址。

安装

解压(如果你是通过part1/part2下载的文件,还需用安装rar解压工具,具体参见参考资料[1]的第一节)得到文件夹scitools,我是将文件夹直接移动到了/usr/路径下,建立软链接(和参考资料[1]中所述的方法不同)

$ sudo mv $UnzipPath/scitools  /usr
$ ln -s /usr/scitools/bin/linux64/understand /usr/bin
$ ln -s /usr/scitools/bin/linux64/understand.bin /usr/bin

建立完软链接后就可以在终端中直接输入understand来启动软件了。

破解

运行软件,显示



点击中间的按钮(Add Permanent License)



点击左侧的按钮(Add Eval or SDL (RegCode))



输入证书CODE(32/64 都可用):09E58CD1FB79

使用

导入项目

导入项目有两种方法,一种是从菜单栏点击File–>New–>Project,另一种是点击下面界面中间的New Project



点击后,会进入到如下界面,你可以更改项目名称为你要导入的项目名称,以便于以后查找,你可以直接导入你正在开发的项目,你的代码更改后,这个项目也会自动更新,方便你快速开发,不需要每次导入。



更改名称后点击Next进入如下界面,这个界面是让你选择你要导入项目包含了哪几种语言,注意,在C/C++后面有两种模式,下面有注释,其中Strict模式包含Object-C和Object—C++,还有Web的注释,自己看看就好了,在此就不再解释



然后点击Next进入下面界面:



在此界面点击上面的“Add a Directory”,也就是添加你要导入项目的路径,点击后会弹出如下界面,此时有个奇葩就是弹出的界面会被上图界面遮挡,此时你要移开该界面,然后会出现下面界面:



点击后面的带有三个点的按钮选择你要加入的项目文件夹,此处不用打开文件夹,只要点中文件夹点击open按钮:



此时只需要点击OK即可,界面会跳转到如下界面:



此时有两个选项,一个是立即分析代码,一个选择配置,对于我们来说只需要默认即可,然后点击OK按钮,此时软件开始分析代码,分析完成后会出现如下界面:



左侧会出你的项目结构,中间出现你项目的名称,此时你可以操作左面项目来查看相关代码,如下图所示:

搜索功能

该软件针对不同位置,不同属性有不同的搜索方法,下面介绍搜索功能。

  1. 左侧项目结构中搜索:在这个搜索中你可以快速搜索你要查看的类,快捷键,鼠标点击左侧上面项目结构窗口,然后按command + F键会出现如下图所示的搜索框,在框中输入你想要的类回车即可

  2. 类中方法搜索:将鼠标定位到右侧代码中,点击command + F,会弹出搜索框,输入方法回车即可:

  3. 在文件中搜索:也就是全局搜索,快捷键F5或者去上面菜单栏中的search栏中查找,输入你想要的类或者方法,回车查找,下面会列出所有使用的地方:

  4. 实体类查找:软件菜单栏search中最后一项–Find Entity,点击输入你要查找的实体类,回车查找:



    快速搜索是软件快速使用必备的技能,包括我们常用的idea一样,快速定位类,方法,常量等,可以快速帮助我们解决问题。

项目视图

项目视图包含很多的功能,能够自动生成各种流程图结构图,帮助你快速理清代码逻辑、结构等,以便快速理解项目流程,快速开发,视图查看方式有两种,一种是鼠标点击你要查看的类或者方法等上面,然后右键弹出菜单,鼠标移动到Graphical Views,然后弹出二级菜单,如下图所示:



另一种方式是点击要查看的类或者方法,然后找到代码上面菜单栏中的如下图标:



然后点击图标右下角的下拉箭头,弹出如下菜单,即可选择查看相关视图:

层级关系视图分类:

  1. Butterfly:如果两个实体间存在关系,就显示这两个实体间的调用和被调用关系;如下图为Activity中的一个方法的关系图:

  2. Calls:展示从你选择的这个方法开始的整个调用链条;

  3. Called By:展示了这个实体被哪些代码调用,这个结构图是从底部向上看或者从右到左看;



    4.Calls Relationship/Calledby Relationship:展示了两个实体之间的调用和被调用关系,操作方法:首先右键你要选择的第一个实体,然后点击另一个你要选择的实体,如果选择错误,可以再次点击其他正确即可,然后点击ok;





    5.Contains:展示一个实体中的层级图,也可以是一个文件,一条连接线读作”x includes y“;



    6.Extended By:展示这个类被哪些类所继承



    7.Extends:展示这个类继承自那个类:

结构关系视图分类:

1.Graph Architecture:展示一个框架节点的结构关系;

2.Declaration:展示一个实体的结构关系,例如:展示参数,则返回类型和被调用函数,对于类,则展示私有成员变量(谁继承这个类,谁基于这个类)

3.Parent Declaration:展示这个实体在哪里被声明了的结构关系;

4.Declaration File:展示所选的文件中所有被定义的实体(例如函数,类型,变量,常量等);

5.Declaration Type:展示组成类型;

6.Class Declaration:展示定义类和父类的成员变量;

7.Data Members:展示类或者方法的组成,或者包含的类型;

8.Control Flow:展示一个实体的控制流程图或者类似实体类型;



9.Cluster Control Flow:展示一个实体的流程图或者类似实体类型,这个比上一个更具有交互性;

10.UML Class Diagram:展示这个项目中或者一个文件中定义的类以及与这个类关联的类



11.UML Sequence Diagram:展示两个实体之间的时序关系图;



12.Package:展示给定包名中声明的所有实体

13.Task:展示一个任务中的参数,调用,实体

14.Rename Declaration:展示实体中被重命名的所有实体

由于视图比较多,所以就一一贴上代码,主要还是需要自己去调试,查看各个功能视图的展示结构以及作用,孰能生巧,多操作几下就会了,所以不再做过多的解释。最终希望这款软件能够帮助你快速开发,快速阅读别人的或者自己的代码。


参考资料

[1] ubuntu 14.04系统安装 Scientific Toolworks Understand 软件教程

[2] Scientific Toolworks Understand for linux 的下载

[3] Understand:高效代码静态分析神器详解

Scientific Toolworks Understand 软件教程的更多相关文章

  1. Scientific Toolworks Understand

    Scientific Toolworks Understand是一款定位于代码阅读的软件.界面用Qt开发的. 软件特性: 1.支持多语言:Ada, C, C++, C#, Java, FORTRAN, ...

  2. Scientific Toolworks Understand for linux

    Scientific Toolworks Understand for linux 这个软件我找了很久了,一直没有找到合适能装的.现在这款能在linux上顺利运行的版本,共享给需要的TX们. 个人觉得 ...

  3. Scientific Toolworks Understand for linux安装方法

    1.首先从官网http://www.scitools.com/download/index.php下载Linux版本 2.解压到安装目录下: 32位:gzip -cd Understand-3.1.6 ...

  4. understand软件使用教程(转)

    源代码阅读工具(Scientific Toolworks Understand)的特色 1.支持多语言:Ada, C, C++, C#, Java, FORTRAN, Delphi, Jovial, ...

  5. FastStone Capture(FSCapture) 注册码 _图形图像_软件教程_脚本之家

    FastStone Capture(FSCapture) 注册码 _图形图像_软件教程_脚本之家 FastStone Capture 注册码 序列号: name/用户名:TEAM JiOO key/注 ...

  6. 如何下载离线Adobe软件教程

    在如今好多软件官网上面都不支持离线安装包下载,仅仅只留下一个在线安装,那么面对这种情况我们应该如何去做?在这里我先提供一个常用的PDF阅读器离线安装包下载地址,在文章后面会有教程. Adobe Acr ...

  7. Linux 学习笔记01丨Ubuntu系统安装、配置及软件教程集合

    1. Ubuntu系统安装 Windows10安装ubuntu18.04双系统教程 Ubuntu 20.04.1 镜像下载 软碟通 机械革命进入BIOS模式 要按F2,注意将Boot Option中将 ...

  8. Linux安装/卸载软件教程

    一.源码安装 ./configure #环境检查.生成makefile make #编译 make install #安装 这三条命令是最经典的Linux软件安装,适用于所有发行版 二.软件包管理工具 ...

  9. 新款Macbook 安装任意来源软件教程 mac软件下载资源推荐

    防止无良爬虫,开头附上原文链接:http://www.cnblogs.com/xueyudlut/p/7810981.html ------分割线--------------------------- ...

随机推荐

  1. [mysql]You must reset your password using ALTER USER statement before executing this statement.

    原因分析: MySQL版本5.6.6版本起,添加了password_expired功能,它允许设置用户的过期时间.这个特性已经添加到mysql.user数据表,但是它的默认值是”N”,可以使用ALTE ...

  2. Dingo 的安装

    安装Dingo需要下面的环境: Laravel 5.1 或 lumen 5.1 + php 5.59+ 1. 修改composer.json 文件,添加下面的代码: "require&quo ...

  3. C# base64编码、解码

    public class TransferCode { #region base-64编码.解码 /// <summary> /// BASE64编码 /// </summary&g ...

  4. react的this.setState没有触发render

    一.浅比较 出现情况: 明明改变了值, 并且回调函数也触发了, 但是就是不触发render import React, { PureComponent } from 'react' import { ...

  5. oracle 游标分析与理解(基础)

    --------------坚持写一点 慢慢成长 希望对大家有所帮助(小白的理解)  也是自己学习后的理解(只是一小部分,需要更深沉的还需日后成长) 接下来就是我们的重点 --游标 提供了一种对从表中 ...

  6. python 学习笔记 5 ----> dive into python 3

    字符串 文本:屏幕上显示的字符或者其他的记号 计算机认识的东西:位(bit)和字节(byte) 文本的本质:某种字符编码方式保存的内容. 字符编码:一种映射(显示的内容  ----> 内存.磁盘 ...

  7. 【官方下载】EasyCMDB官方基础版免费下载使用!

    链接

  8. webpack打包vue项目,资源路径如何从绝对路径改为相对路径?css中的图片资源如何修改配置?

    资源相对引用路径 问题描述 一般情况下,通过webpack+vuecli默认打包的css.js等资源,路径都是绝对的. 但当部署到带有文件夹的项目中,这种绝对路径就会出现问题,因为把配置的static ...

  9. WEB UI 上传URL附件(使用方法备份)

    FUNCTION zcrm_update_atta. *"------------------------------------------------------------------ ...

  10. 本地计算机上的 postgresql 服务启动后停止解决方法

    在启动 postgresql 服务是遇到这种情况: 解决方法: 打开计算机管理====>查看应用程序日志信息,可以看出,由于日志配置错误的问题. 找到 postgresql.conf 文件,做如 ...