PyCharm 中的 UML 类图

在上一节里,当我们在做代码重构时,第一步要选择重构对象,可能是类,也可能是个变量,对于选择对象,我们可以通过 Project 或者 Structure 工具栏选择,也可以直接在编辑器内选择,实际上,PyCharm 支也持使用 UML 类图来分析 Python 类以及数据库和表的结构,这也就意味着可以通过UML类图去选择重构对象。本节将主要讲述ULM 类图的相关功能与使用。

1. 什么是 UML

UML是统一建模语言,Unified Modeling Language 的缩写。综合了面向对象的建模语言、方法和过程,是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持。关于UML更详细信息,请参考官网

UML 主要包括:

  • 类图(class diagram);
  • 用例图(use case diagram);
  • 时序图(sequence diagram);
  • 协作图(collaboration diagram);
  • 状态图(statechart diagram);
  • 活动图(activity diagram);
  • 构件图(component diagram);
  • 部署图(deployment diagram)。

Tips:在PyCharm 中, 只支持 class diagram

2. 配置 UML 类图

主菜单依次点击:PyCharm/File -> Preference /Settings -> Tools -> Diagrams。可定义要在关系图中显示的元素、节点元素和成员的可见性级别、布局等。这些设置适用于任何新创建的 UML 类关系图。
图片描述

3. 查看类图

PyCharm 使用捆绑插件实现 UML 图表功能,所以要保证该插件可用。主菜单 PyCharm/File -> Preference /Settings -> Plugins
图片描述

step1: 选择文件在 Project 工具栏,或在编辑器选择一个类(比如:Solver 类)。
step2: 在选择的上下文菜单上,单击 Diagrams ,在子菜单上,选择要查看模型的方式:Show Diagram 或者 Show Diagram Popup (二者的区别是:前者是以单独的TAB页显示,后者以弹出框显示):
图片描述

step3:选择 Show Diagram,关系图显示在编辑器选项卡中:
图片描述
选择其中的对象,右键点击,在其上下文菜单中可以控制显示的内容
图片描述

4. 编辑类图

添加元素节点到关系图中:如下图所示,源文件原有四个类定义: Skills、SkillsNew、Junior 与 JuniorNew, 如果增加了新类,可以通过下文菜单操作将新加节点元素添加到 UML 类关系图中。
图片描述
回车确定后,新生成的类图如下所示:
图片描述

Tips:如果想删除某个元素节点, 选中节点, 然后点击键盘上的删除按钮就可以了。

5. 导航

从类图导航到源代码: 在上下文菜单中选择 Jump to Source 或者 按F4, 就可以跳转源代码了。

图片描述
如果关系图比较复杂,可以使用结构视图浏览关系图。按 ⌘F12(Ctrl + F12), 将弹出关系图元素的菜单。
图片描述

6. 小结

本节主要讲述了 UML 类图在 IDE 中的使用,功能相对比较简单,但需要对 UML 有一定的了解,能看懂 UML 图。当类的继承关系比较复杂,通过 UML 类图比直接读代码更能快速准确的理顺各个类之间的关系,这也是最常用的应用场景。另外当我们读第三方源代码时,可以直接通过显示整个包的 UML 类图,快速了解代码结构。
图片描述