当前位置: 首页 > news >正文

记软件开发者画图(UML),使用WPS应用制图

目录

前言

一、什么是UML

二、使用什么画图工具

三、示例

​四、IntelliJ IDEA 2021快速生成UML图


前言

做软件开发的从写第一个示例程序到最后写项目程序避不开的需要设计画图,所以今天我们就来梳理一下‌UML(统一建模语言)图形需要画哪些图。


一、什么是UML

‌UML(统一建模语言)图形‌是一种用于软件开发中的建模语言,提供了一套标准化的图形符号和规则,用于描述软件系统的结构、行为和交互关系。用于可视化和描述软件系统的不同方面。这些图形可以帮助开发人员、设计师以及其他利益相关者进行沟通、交流和理解软件系统的设计。


UML图可以分为几个主要类别,包括静态建模、动态建模和物理建模。静态建模主要涉及类图、用例图等,用于描述系统的静态结构和类之间的关系。动态建模则包括时序图、活动图等,关注系统的行为和对象之间的交互。

  • 类图,描述类的特性和类之间的静态关系(6种静态关系:关联、依赖、组合、聚合、继承、泛化),类图包含类名、属性、方法。
  • 时序图,描述参与者之间的动态调用关系。

  • 组件图,组件是比类粒度更大的设计元素,组件图描述组件之间的静态关系,主要是依赖关系。

  • 部署图,描述软件系统的最终部署情况的宏观图。

  • 用例图,反映用户和软件系统的交互,描述系统的功能需求。用户角色可以是人货其它系统。

  • 活动图,主要用来描述过程逻辑和业务流程,似流程图。

二、使用什么画图工具

使用WPSx万兴亿图,使用步骤:

1. 打开WPS Office --- 应用

2. 进入应用市场文档处理(有流程图、思维导图等),选择进入本地流程图

3. 进入本地流程图界面后有如下图标红的几项软件开发常用构图

4. 进入 软件---UML图(点击下图各菜单画对应的图即可)

三、示例

以类图、时序图为例效果如下:

类图,实体User.java的类图

时序图,

​四、IntelliJ IDEA 2021快速生成UML图

1. 使用PlantUML integration 插件可以生成用例图、时序图、类图、活动图等。

idea安装插件File--setting--plugins--搜索出PlantUML integration安装即可。

安装后使用如下图:弹出下图新建对话框,输入名称新建即可

2. 使用快捷方式转化类为类图

‌IntelliJ IDEA支持将类转化为类图。
‌选中需要的类‌,然后右键点击选择“Show Diagrams”或者使用快捷键Ctrl+Alt+Shift+U 生成类图。
用户还可以通过“Show Diagrams PopUp”选项,使用快捷键Ctrl+Alt+U,在弹出窗口中显示类图。
IDEA还支持编辑、导出类图。

3. 安装SequenceDiagram插件生成时序图

dea安装插件File--setting--plugins--搜索出SequenceDiagram安装即可。

如下图生成时序图:

 完!


http://www.mrgr.cn/news/30049.html

相关文章:

  • 【计网不挂科】计算机网络期末考试(综合)——【选择题&填空题&判断题&简述题】完整试卷
  • 如何将Nop平台与Solon框架集成
  • 「QT」QT5程序设计专栏目录
  • 会议直击|美格智能受邀出席第三届无锡智能网联汽车生态大会,共筑汽车产业新质生产力
  • MySQL多系统安装配置教程(Windows、Ubuntu、Centos)
  • 利用OpenAI进行测试需求分析——从电商网站需求到测试用例的生成
  • 【人工智能】如何利用AI高效解决Linux中出现的严重问题?程序员必看小技巧!
  • 【C++笔记】八、结构体 [ 1 ]
  • Linux StableDiffusion下载外网插件失败, 自己下载安装
  • 如何做好一个网站建设的规划?
  • 图神经网络模型的应用(8)--1
  • CST电磁仿真77GHz汽车雷达保险杠
  • springboot篮球球队管理系统-计算机毕业设计源码97090
  • HY007必填字段为null 导致 1054列名对不上导致
  • 非隔离220V降5V200mA-500mA电源方案
  • vscode配置c/c++环境
  • 最新开发的预约上门保洁服务小程序源码系统 带完整的安装代码包以及搭建部署教程
  • Vue 3 中 `$emit` 的使用示例
  • 1.pytest基础知识(默认的测试用例的规则以及基础应用)
  • windows11关闭自带杀毒软件
  • MapStruct 详细使用示例,详解教程
  • 如何在 Qt 的 QListWidget 中为某一行添加点击事件
  • Day04_JVM实战
  • leetcode:3232. 判断是否可以赢得数字游戏(python3解法)
  • 易基因:单细胞甲基化+转录组多组学分析揭示哺乳期母体低蛋白饮食对子代的跨代传递|项目文章
  • 【LangChain系列】实战案例3:深入LangChain源码,你不知道的WebResearchRetriever与RAG联合之力