【代码分析工具】starTool,代码地图,代码阅读加速器

2021年9月30日 18点热度 0条评论 来源: ThinkInFuture

 starTool可以解析工程中的代码,使用图表的方式展示工程下代码关系,可以帮助代码阅读者更好的一览整个工程代码的关键点和入手点,特别适用于缺少文档支持的开源项目代码阅读

【日记】

新增UI版,无需指导,直接上手,链接:https://download.csdn.net/download/weixin_39020940/10611966

效果预览:www.englishbox.top

 

01

 

 

为什么我们需要这样的工具

 

 

 

 

 

它的理论依据是,字不如表,表不如图(曾经我的某个SE给我讲的),虽然我们是码农,也需要系统化的工具支撑

它的目标是

1、帮助我们学习代码整体框架

2、帮助我们对代码的精准阅读(不用把整个代码撸一遍)

 

02

它能做什么

 

  1. 一张表列出工程代码中所有单元类的明细

  2. 帮你找出哪些的工程的基础定义,哪些是上层业务

  3. 深度解析出每一个类的依赖关系

 

 

注: starTool当前只支持java,c++和python正在计划中(看作者工期)

 

 

 

 

 

03

如何使用

 

1.            文件说明

starTool 的目录

2018/06/09  11:28   <DIR>          .

2018/06/09  11:28   <DIR>          ..

2018/06/04  07:45               228 run.ini

2018/06/09  11:25        6,176,584 starTool.exe

 

    run.ini是starTool的配置文件,用来配置需要解析的代码工程相关信息

    starTool.exe是执行文件,配置完执行解析代码工程

2.            运行示例

第一步,配置run.ini如下:

{

    "load" : "windows",                                              

    "function" : "code",

     #设置代码路径

    "codePath" :"D:\\MyProject\\spring-framework-master",     

     #设置生成的解析名字

    "codeType" : "java",

    "codedumpfile" :"spring",              

    #深度解析类的个数                                                          

    "filterClassName" :"50",                                                                                  

    "pause" : "True"

}

第二步,运行starTool.exe

 

运行完后,我们得到3个文件

 

 

打开spring.550961.xls(550961是spring的代码量)

在这里,可以看到工程下所有类的一些相关信息,是按类代码量的降序排序(因为一般代码量越多,说明承担的业务逻辑越多)

另外在detail里面可以,每个类的详细信息

这里以DefaultListableBeanFactory为例

同时还有DefaultListableBeanFactory的UML关系图

更多功能等后期再做详述,欢迎读者下载试用(主要是作者懒)

 

04

哪里下载

CSDN:

https://download.csdn.net/download/weixin_39020940/10469078

百度网盘:

链接: https://pan.baidu.com/s/1H9mHggSOkQjeE5pqVMw9CQ

密码: uimm

05

使用StarTool进行代码阅读指南

1、使用StarTool导出代码地图

2、通过SubSys栏做出数据透视图,先对代码规划有一个大概的认知

3、在每级目录下同类别类做一个梳理,大概知道类的功能,并找出里面的业务关键类和基础类

4、结合业务流程将业务类进行串联,了解业务流程

    原文作者:ThinkInFuture
    原文地址: https://blog.csdn.net/weixin_39020940/article/details/80633835
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。