UML介绍
一、前言
UML:Unified Modeling Language(统一建模语言),使用UML进行建模的作用有哪些:
可以更好的理解问题
可以及早的发现错误或者被遗漏的点
可以更加方便的进行组员之间的沟通
支持面向对象软件开发建模,可以更好的描述显示编程的情景。
对于复杂的系统来说,如果概要模型做的好,那么整个系统的模型也就很清晰明了。
二、 UML介绍
UML 规格定义了两大类UML图:结构图( structure diagrams )和行为图(behavior diagrams)
结构图( structure diagrams )
结构图从不同的抽象和实现程度上描述了一个系统和系统构建的静态结构,并且描述了他们直接是如何关联到一起的。
行为图(behavior diagrams)
行为图展示了一个系统中的对象的动态行为,它描述了一个系统中的对象如何随着时间变化而变化。
下面借用下UML2.5官方图说明下UML图分类:
三、常用的几种图
1. 用例图(UseCase Diagram):
用例图是需求分析的产物,主要是用来描述用户是如何使用一个系统的,是用户所能观察和使用到的系统功能的模型图。
2. 类图(Class Diagram):
UML类图,是用来描述系统中的类以及各个类之间的关系。系统中可以有多个类图,单个类图则只是表达了系统的一个方面。类图可以帮助我们在正确编写代码之前对系统有个很全面的认识,是建模中最常见的一种类型图。
3. 对象图(Object Diagram)
对象图描述的是一组对象之间的关系,而不是类之间的关系。它是类图的变体,但是又与之不同,对象显示的类的多个对象而不是实际的类。
4. 活动图(Activity Diagrams):
UML活动图,顾名思义就是UML的动态模型的一种图形,对于系统的功能建模特别重要。它用来描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动。简单来讲,就是表示在处理某个活动时,两个或者更多类对象之间的过程控制流。
5. 状态图(State Machine Diagram):
UML状态图,用于显示状态机,即描述一个对象所处的可能状态以及状态之间的转移。用状态图建模可以帮助开发人员分析复杂对象的各种状态的转换,以及对象何时执行怎样的动作。
6. 时序图(Sequence Diagram):
UML时序图,又叫序列图或者顺序图,是一种用来描述对象之间传送消息的时间顺序,是用来表示用例中的行为顺序。
7. 协作图:
UML协作图(又叫通信图)是一种作用于显示对象之间如何进行交互以执行特点用例或用例中特点部分行为的交互图,它强调的是发送和接收消息的对象之间的组织结构。
8. 组件图(Component Diagram):
UML组件图(又叫构件图),是用来描述在软件系统中遵从并实现一组接口的物力的、可替换的软件模块。它所表现的是一种系统静态实现的结构,能够帮助开发人员对系统组成达成一致的认识。
9. 部署图(Deployment Diagram):
UML 部署图是一个用来描述系统的硬件配置和部署以及软件的构件和模块在不同节点上分布的模型图。它能够帮助系统相关人员了解系统中各个构件部署在什么硬件上以及硬件之间的交互关系。
参考:
1、edrawsoft:什么是UML图?常见的UML图有哪些?
2、ifeve.com:UML建模图实战笔记
3、大话PM|产品经理必备利器:UML
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端