社区编辑申请
注册/登录
架构师必修课:UML建模
开发 架构
UML图即一种图形化语言,通过不同的图形和符号,来描述软件模型以及各个元素之间的关系。

定义

UML - Unified modeling language UML (统一建模语言),是一种用于软件系统分析和设计的语 言工具, 用于帮助软件开发人员进行思考和记录思路的结果。

简单说,UML图即一种图形化语言,通过不同的图形和符号,来描述软件模型以及各个元素之间的关系。

UML图分类

  • 用例图
  • 静态结构图:类图,对象图,包图,组件图,部署图
  • 动态行为图:交互图(时序图和协作图),状态图和活动图

常用工具

  • word:绘制简单UML图,是一种非专业手段
  • visio
  • powerDesigner:支持标准数据建模UML
  • eclipse插件amaterasUML
  • idea插件plantUML
  • idea插件UML support

常见的几种类图关系

依赖关系

代码示例:

/**
* 依赖关系示例
* @author:liyajie
* @createTime:2022/2/10 10:17
* @version:1.0
*/
public class PersonService {

// 方法入参使用到了
public void save(Person person){

}

// 返回参数使用到了
public IdCard getIdCard(){
return new IdCard();
}

public void job(){
// 方法内部使用到了
Job job = new Job();
}
}

UML图示:

一条虚线+箭头;

泛化关系

代码示例

/**
* 泛型关系(继承)示例
* @author:liyajie
* @createTime:2022/2/10 10:17
* @version:1.0
*/
public class PersonService1 extends Base{

}

UML图示

一条实线+三角箭头;

实现关系

代码实现

/**
* 实现关系示例
* @author:liyajie
* @createTime:2022/2/10 10:17
* @version:1.0
*/
public class PersonService2 implements BaseService{

}

UML图示

一条虚线+三角箭头;

关联关系

代码示例

/**
* 关联关系示例
* @author:liyajie
* @createTime:2022/2/10 10:17
* @version:1.0
*/
public class PersonService3 {
public PersonDao personDao;
}

UML图示

一条实线+箭头+空心菱形;

总结

以上就是今天的内容,主要介绍了UML相关基本知识,以及常见的几种类图关系的画法。

责任编辑:武晓燕 来源: 今日头条
相关推荐

2022-06-15 11:02:40

网络安全运营

2022-06-27 15:25:08

架构模型治理

2022-05-17 11:06:44

数据库MySQL系统

2022-06-07 09:59:21

网络安全安全漏洞

2022-06-27 23:44:37

云原生云存储云计算

2022-06-16 15:42:16

攻击面管理ASM

2022-06-01 11:14:42

Java代码技巧

2022-06-23 11:42:22

MySQL数据库

2022-04-15 14:31:02

鸿蒙操作系统

2022-06-23 14:03:26

混合ITCIOIT管理工具

2022-05-11 15:08:52

驱动开发系统移植

2022-06-15 10:30:07

数据中心5G蜂窝网络

2022-04-19 08:15:53

DDD领域建模实战

2022-05-17 09:14:50

聚类算法python

2022-06-14 14:18:46

架构秒杀高并发

2022-04-30 08:43:52

Spring模块化框架

2022-06-22 05:53:49

城域网广域网VXLAN

2022-06-14 15:28:37

数据库存储系统变革趋势

2022-06-07 14:38:40

云原生架构云计算

2022-04-23 16:58:24

微服务微服务架构

同话题下的热门内容

全链路压测:影子库与影子表之争应该知道的RPC内核细节(值得收藏)!!!架构自治服务:构建数据驱动的架构洞察什么是Pulsar函数流处理应用?五张图带你理解 RocketMQ 顺序消息实现机制实现基于 Grafana Loki 的日志报警使用 Loki 微服务模式部署生产集群淘宝iOS扫一扫架构升级 - 设计模式的应用

编辑推荐

终于有人把Elasticsearch原理讲透了!花了一个星期,我终于把RPC框架整明白了!拜托!面试不要再问我Spring Cloud底层原理陌陌基于K8s和Docker容器管理平台的架构实践收藏 | 第一次有人把“分布式事务”讲的这么简单明了
我收藏的内容
点赞
收藏

51CTO技术栈公众号