zoukankan      html  css  js  c++  java
  • python逆向工程:通过代码生成类图

    python逆向工程:通过代码生成类图

    大致过程

    现在有一个core包,里面有python的代码。

    通过core包,生成python的类图,如下:

    实施步骤:

    1、首先安装graphviz,一个画图工具,地址为:
    http://www.graphviz.org/pub/graphviz/stable/windows/graphviz-2.28.0.msi

    或者百度下载中心,下载graphviz


    2、pyreverse能方便的生成uml类图,pylint里自带了pyreverse这个工具。使用pip安装pylint
    pip install pylint


    3、使用,可以参考的命令为,core为存放代码的目录
    pyreverse -ASmy -o png -p _002 core/

    这样就会在和core同级的目录生成2张png图片。

    一张类图,一张包图

    参考:

    http://blog.csdn.net/u013920085/article/details/53285288

    延伸:

    1、包图图解:

    包图中,实线箭线表示python模块之间的引用关系。

    A用实线箭线指向B时,表示A模块中import(导入)了B模块。

    python模块可以是一个文件(*.py),也可以是一个包(含有__init__.py的Python包)。

    注意:基础模块(os、sys等)不会再包图中显示。

    2、类图图解:

    类图中,实线空心三角表示继承基类(父类)。

    A用实线空心三角指向B时,表示A类继承了B类。(如果改为虚线,则表示继承接口,java中常见)

    类图中,实线实菱形表示组合关系,如人体的各个部位,不可分割。(如果改为空菱形,则表示聚合关系,如团队由人员组成,可以分割)

    A用实线实菱形指向B时,表示A是属于B的、不可分割的组成部分。此时应在实线上标注出B的什么属性来接收A这个单位,作为B的组成部分。

  • 相关阅读:
    linux command lynx
    git bisect
    git blame (10)
    git crate&query&delete tag(九)
    git crate patch and check&apply patch(八)
    learning shell check host dependent pkg (8)
    【泛型】
    sql server 查询所有表的记录数
    【转】EXCEL中如何实现由总表自动得出分表
    MS Chart 打印
  • 原文地址:https://www.cnblogs.com/andy9468/p/8353613.html
Copyright © 2011-2022 走看看