UML概述

文章目录

  • 面向对象技术是什么?
  • UML与面向对象的关系是什么?
  • UML中构成结构

一、面向对象技术是什么?

面向对象技术是出现在20世纪70年代末,是软件工程领域中的重要技术,是一种程序设计方法,是对现实世界中问题的抽象方式.

因为面向对象是从现实世界中抽象出来的,那么我们可以用下面的图来表示:

image.png

下面来举一些例子解释上面这些名词,就会容易理解啦

类是对相同共性的抽象描述(这个类就是我们平时说的分类的类,我认为可以理解成动物根据不同的特点划分成不同的物种)

静态特性:学生的姓名班级学号等(一般不会发生改变)

动态特性:学生的注册,上课等。用方法调用来描述动态特性(会发生改变)

交互需要用消息,方法的调用来完成。

封装性:学生有动态信息还有静态信息,我们可以公有私有保护,外部没有办法控制。

继承性:车辆是父类,小汽车,卡车等就是子类(狗有很多,有哈士奇,萨摩耶,泰迪等,我认为后者就是前者的继承)

聚合关系:事物之间是有关系的。

多态性:乐团里边有不同的乐器,每个乐器会产生不同的行为。这就是用多态性。(对同一消息产生的不同反应)

二、UML与面向对象的关系是什么?

对面向对象建模技术的研究的主要成果就是统一建模语言UML。

三、UML中构成结构

  • UMl中的事物
  1. 结构事物(静态)

类class:类是对一组具有相同属性,方法,关系和语义的对象的描述,一个类实一个或者多个接口

接口interface:定义了操作的规范

协作collaboration:定义了一个交互

用例use case: 是对一组动作序列的描述,系统执行这些工作将会产生一个对特定参与者有价值且可观察的结果。

主动类 active class:其对象至少拥有一个进程或者线程,他能启动控制程序。

构件component:构件是系统中物理的可替代的部件,他遵循且提供一组接口的实现,

节点node:运行时才出现。

  2.行为事物(动态)

交互:交换信息的行为

状态机:

 3.分组事物:

是UML模型的组织部分,最主要的分组事物是包

包是把元素组织成组的机制

不同种类是事物可以有相同的名称

4.注释事物

  • UML中的关系

关联

image.png

依赖

两个关系之间的使用关系

@%6{EH_CIVQ`)YEOZN6%KIK.png

泛化

image.png

实现

I82JKAKXETE~{FYI}}Q{3VI.png

统一建模语言(UML,Unified Modeling Language)是一种用于软件系统设计和建模的标准化图形化语言。它提供了一套丰富的图表和符号,用于描述系统的不同方面,从需求分析到系统设计、实现、测试和维护等各个阶段。

UML的设计目标是提供一个通用的、统一的建模语言,使得软件开发人员、设计师和项目干系人能够更好地沟通和协作。UML图表以图形方式展示了系统的结构、行为、交互和功能,帮助人们更好地理解和分析系统。

UML包含多种类型的图表,每种图表用于展示不同的系统方面。常见的UML图表类型包括:

  1. 用例图(Use Case Diagram): 描述系统的功能和用户之间的交互关系。

  2. 类图(Class Diagram): 展示系统中的类、接口、关联关系和属性等结构信息。

  3. 时序图(Sequence Diagram): 描述对象之间的消息传递顺序,显示交互的时间顺序。

  4. 活动图(Activity Diagram): 展示业务流程、活动和操作的执行顺序。

  5. 状态图(State Diagram): 描述对象在不同状态之间的转换和行为。

  6. 组件图(Component Diagram): 描述系统的组件和它们之间的关系。

  7. 部署图(Deployment Diagram): 展示系统的物理部署结构,如硬件、软件和网络等。

等等。

UML在软件工程中扮演着重要的角色,有助于开发人员和设计师更清晰地定义、沟通和实现系统。它可以帮助团队协作,促进需求分析和设计过程,支持软件系统的模型驱动开发。不仅限于软件,UML还可以应用于其他领域,如系统工程、业务流程建模等。

1. 版本和标准: UML有不同的版本和标准,每个版本都可能有一些扩展或变化。常见的UML版本包括UML 1.x、UML 2.0、UML 2.5等。了解所使用的UML版本和标准是很重要的,以确保正确地使用UML的语法和图表。

2. 工具支持: 有许多专业的UML建模工具可用于创建、编辑和管理UML图表。这些工具提供了各种功能,如自动生成代码、模型管理、版本控制等。选择合适的工具可以提高建模效率和质量。

3. 适用范围: UML适用于不同的软件开发方法,包括结构化、面向对象、敏捷等。了解UML在不同开发方法中的应用是有益的,因为在不同的方法中可能强调不同类型的图表和建模方式。

4. 沟通工具: UML图表是一种强大的沟通工具,可以用于与开发团队、设计师、项目干系人等进行沟通。图表可以帮助消除语言障碍,使不同背景的人更容易理解和参与讨论。

5. 模型驱动开发: UML可以用于支持模型驱动开发(Model-Driven Development,MDD),即通过建模来生成代码或其他实现。这种方法可以提高开发效率和代码质量。

6. 文档生成: UML图表可以用于生成项目文档,如需求规格书、设计文档等。许多UML工具支持自动生成文档的功能,使得维护项目文档变得更加方便。

7. 学习资源: 学习UML的过程中,可以参考各种教程、书籍、在线资源等,以深入了解UML的原理和应用。

综上所述,UML是一个广泛应用于软件工程领域的图形化语言,可以帮助开发人员更好地建模、设计和分析系统。了解UML的基本概念和图表类型,以及在实际项目中的应用,可以使你在软件开发过程中更加高效和准确地进行建模和设计工作。

 

有什么问题欢迎大家指正!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 18
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Circ.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值