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

在软件工程中, 通过都是先了详细设计, 然后按照详细设计来进行开发。在编写详细设计的时候,通常都会画一些类图、时序图、流程图等等UML设计, 然后通过uml类图生成代码, 这个属于正向工程生成代码, 然而在实际开发中, 很可能是先完成了代码开发, 再来补充一大堆的文档, 这是就需要通过代码来生成类图, 这个就属于逆向工程了, 下面进入主题, 如何利用staruml通过代码生成类图。(需要注意的是只有面向对象语言才会有类的概念,这里我们只考虑面向对象程序设计语言中的三大巨头:C++、Java、C#)

0x00 初始化

工欲善其事,必先利其器。首先我们下载安装 StarUML (这些优秀的开源软件值得我们学习)

0x01 新建工程

初次运行会弹出如下图所示的对话框,保持默认即可:
staruml

之后的画面是这样:
staruml

如果无法正常运行或者界面无法加载可以右键修改兼容性。

0x02 加载插件

我们需要添加相关语言的插件才能逆向出类图,StarUML 默认是全部加载了的,这里我们确认一下:
点击菜单栏【Tools】—【Add-In-Manager】,然后勾选中【Java Add-In】,然后点击【OK】就完成了对应插件的安装(默认已经全装上了):
staruml add-in manager

0x03 添加 Profile

点击菜单栏【Model】—【Profile】,此时软件会弹出协议管理对话框(Profile Manager),在弹出的对话框中选择对应 Profile,再点击Include, Profile会出现在对话框的右侧Included Profiles列表中,最后点击close:(这里以 C++ 为例)
staruml profile

0x04 逆向工程

在右侧的工程上点右键—【C++】—-【Reverse Engineer】,然后会弹出选择源码对话框,点击对话框左侧的目录,在对话框右侧会列出该目录下的C++ Source file,选中要生成的 C++ 代码文件,点击add,然后点击下一步【next】,然后选择生成到工程结构,点击下一步下一步就完成了:(注意C++文件需要是.h结尾的)
C++ Reverse Engineering

C++ Reverse Engineering

勾上喜欢的选项或者默认:
C++ Reverse Engineering

弹出这个框表示逆向完成:
C++ Reverse Engineering

结果是这样的:
C++ Reverse Engineering

  • 24
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值