UML(Unified Modeling Language,统一建模语言)是一组用于描述OOAD过程的图形化表达方式。
UML为交流面向对象的设计中的需求,行为、体系结构的实现提供了一套综合的表示法。
UML绘制工具,EA 和VSU 2010
UML由9个不同类型的图组成:
用例图:显示了系统的外部可视行为。
用例图描述了系统外的人员和系统的交互动作,以及系统的响应,该类型的图可以用于描述系统的功能需求。
活动图:显示系统行为的峡谷纳西描述。
活动图描述了单个功能需求内部的细节行为,包括基本的场景和一些可选的场景。
组件图:显示了系统的体系结构。
组件图描述了系统的可部署单元(可执行文件,组件,数据存储和其他一些内容)以及一些借口,可部署单元通过这些接口进行交互,该图可以用于研究系统的体系结构。
顺序图:显示了对象随着时间的交互。
顺序图描述了某个功能需求的路径或场景内相对时间的详细行为,该图可用于理解系统元素之间的消息流程。
协作图:显示了对象的交互,强调对象之间的关系。(在UML2.0里面找不到了)
类图:显示了类的定义和关系。
类图描述了系统设计中的类和接口,以及他们之间的关系。该图可用于定义内部的,面向对象的代码结构。
状态图:显示了响应时间的状态改变。
状态图描述了系统如何改变状态以相应内部的和外部的事件,确保每个事件都被适当的处理。
部署图:显示了系统的物理体系结构。
部署图描述了系统的可部署单元(应用,组件,数据存储等)如何被赋予不同的节点,这些节点如何交互通信,用于系统映射和负载的研究。
包图:显示了设计的层次结构。
包图描述了设计的相关元素如何按组结合在一起,以及他们之间的关系。
UML的一切实际上就是为了交流。先编码后修复是错误的,先设计再纠错是正确的。
UML图是用来画出来找错误的,而不是要画一个完美的图形,无论是否正确,画图是用来记录和构思你的想法的,而不是一开始就是要画一个正确的图。
Scott Adams 告诉我们:"创造是允许我们犯错,艺术则是知道保留正确。"
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?