java9-flowchart.md 1.0 KB

java9-flowchart

简介

此程序能够绘制简单的java9程序的程序流程图。

使用ANTLR4生成语法分析树,编写Visitor获得流程图结构,使用graphviz-java绘制流程图。

结构

  • java9-flowchart 此部分负责将java9程序转化为流程图。
    • java
      • Java9FlowchartGenerator 程序入口,需提供两个参数:java文件路径及输出文件夹路径。
      • recognizer 此部分负责分析Java语法,包括ANTLR4根据Java9.g4生成的文件,以及自定义的访问器Java9FlowchartVisitor。 其中Java9FlowchartVisitor负责将Java9程序转化为图结构。
      • utils 一些用于精简Java9FlowchartVisitor中重复代码的小工具。
      • JavaName 用于维护当前访问位置所在class/method。
    • resource
      • grammar 存放Java9.g4
  • flowchart 此部分为存储流程图的数据结构

    • java

      • Block

      • Blocks 提供更多构造Block的工厂方法。