Idea类图及时序图
2021-12-21 本文已影响0人
lgtn
概述
类图:展示对象与对象之间的关联关系
时序图:展示对象与对象之间的调用的顺序关系
我们可以将一个模块的业务逻辑关系,通过类图和时序图去表述,使人从宏观角度更容易理解这个模块的设计思想、代码封装。
类图生成
此功能为IDEA本身就具备,不需要另外安装插件。
第一步
右击某一个类(也可以选择多个类这样可以显示多个类之间的关系,但是整体系统一般很难选择到一块),选择Diagrams,其中有两个选项及相关的快捷操作。
(1)Show Diagram可以对类图进行编辑(比如删除不重要的类,此操作并不会影响源代码),还可以在类图中继续增加其他类,形成某个模块完整的类图
(2)Show Diagram Popup只能显示出已选择的类之间的关系,而且无法编辑。


调整类图的选型,增加对应的内容
(1)Fields,将Field信息增加到类图中(这些没有getter、setter)

Constructors,将构造方法增加到类图中

Methods,将方法增加到类图中

Properties,将属性增加到类图中(getter、setter)

Show Dependencies,如果是手工将类一个一个加进来时,类与类之前存在关联时,如果没有显示出关联关系,可以点此按钮
①绿色虚线:表示实现的关系,实现一个接口
②绿色实线:表示接口之间的继承
③蓝色实线:表示类之间的继承

在类图中,选中某个类,点击鼠标右键,弹出右键菜单
①Delete,删除某个不需要在类图中显示的类,只是在类图中删掉,并不会影响源代码
②Add Class to Diagram,将某个类添加到类图中

时序图生成
此处的时序图是描述代码某一个方法的时序,调用次序,需要依赖外部插件。
Sequence Diagram 插件安装
在Marketplace中搜索Sequence,找到Sequence Diagram,安装后重启IDEA

弹出配置界面

(1)Call depth:调用深度,数值越大表示,视图中的调用逻辑越完整(从时序图中,方法的开始到几级结束,类图于目录的级次),但一般选择5即可
(2)Display only project classes:只显示工程的类,默认勾选
(3)Skip getters/setters:跳过getter、setter
(4)Skip private methods:跳过私有方法
(5)Skip constructors:跳过构造方法
选择类中的某一个方法,右键,生成时序图
