什么是统一建模语言(UML)UML与UML类图的基本概念

这篇具有很好参考价值的文章主要介绍了什么是统一建模语言(UML)UML与UML类图的基本概念。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

什么是统一建模语言UML(Unified Modeling Language)

什么是统一建模语言(UML)UML与UML类图的基本概念,MBSE,uml

UML(统一建模语言)是一种通用的建模语言,用于描述软件系统的结构、行为和交互。它提供了一组符号和规则,用于创建可视化的图形模型,帮助开发人员、设计师和利益相关者之间进行沟通和理解。

起源和历史

  • UML起源于20世纪90年代初,由James Rumbaugh、Grady Booch和Ivar Jacobson等知名软件工程师合作开发。
  • 这三位工程师各自拥有自己的建模方法(Rumbaugh的OOA、Booch的OOD和Jacobson的OOSE),为了统一这些方法并提供一个通用的建模语言,他们联合起来并发展出了UML。

为何使用UML

  • 提供统一标准:UML提供了一个统一的标准化建模语言,使得不同团队和人员之间可以使用相同的符号和表示法进行沟通和交流。
  • 可视化表达:UML使用图形符号和图表来表示系统的结构和行为,使得复杂的概念和关系可以以直观的方式展示出来,提高了可理解性。
  • 易于学习和使用:UML的符号和规则相对简单,并且有大量的教程和工具支持,使得学习和使用UML相对容易。
  • 支持系统设计和分析:UML提供了丰富的建模工具和技术,支持系统设计、分析和实现的各个阶段,帮助开发人员更好地理解和规划系统。
  • 提高团队协作:通过使用UML,团队成员可以共享和交流对系统的理解和设计,促进团队之间的协作和沟通,减少误解和错误。

UML的优点

  • 统一标准化的建模语言
  • 可视化表达复杂概念和关系
  • 易于学习和使用
  • 支持系统设计和分析的各个阶段
  • 提高团队协作和沟通

总而言之,UML作为一种通用的建模语言,为软件开发提供了标准化的符号和表示法,帮助开发人员更好地理解、设计和实现软件系统,提高了软件开发过程的效率和质量。

Purpose of Class Diagrams

UML类图主要有以下几个目的:

  1. 显示系统中分类器的静态结构。
  2. 为UML规定的其他结构图提供基本符号和表示法。
  3. 对开发人员和团队成员有帮助。
  4. 业务分析师可以使用类图从业务角度对系统进行建模。

UML类图的组成部分

UML类图由以下两部分组成:

  1. 一组类(Classes)
  2. 类之间的关系(Relationships)

What is a Class

Class是系统中一组具有类似角色的对象的描述,它包括:

结构特征(Attributes)

结构特征定义了类的对象所"知道"的内容,包括:

  • 代表类对象的状态
  • 描述类的结构或静态特征

行为特征(Operations)

行为特征定义了类的对象所"能做"的事情,包括:

  • 定义了对象之间可能的交互方式
  • 描述类的行为或动态特征

Class Notation

类的表示包括三个部分:

类名(Class Name)

类名出现在第一个分区中。

类属性(Class Attributes)

属性显示在第二个分区中。
属性类型在冒号后面显示。
属性对应于代码中的成员变量(数据成员)。

类操作(方法)(Class Operations (Methods))

操作显示在第三个分区中,它们是类提供的服务。
方法的返回类型在方法签名的末尾的冒号后面显示。
方法参数的返回类型在参数名后面的冒号后面显示。
操作对应于代码中的类方法。

Class Relationships

类之间的关系

一个类可以与其他类之间存在一个或多个关系。关系可以是以下几种类型之一:(请参考右侧的图形表示关系)。

Relationship Type

关系的种类

Graphical Representation

图形解释

Inheritance (or Generalization):

继承(或泛化):

  • 表示“是一个”关系。
  • 抽象类名称以斜体显示。
  • SubClass1和SubClass2是Super Class的特化。
  • 从子类指向父类的实线箭头。
    什么是统一建模语言(UML)UML与UML类图的基本概念,MBSE,uml

Simple Association:

简单关联:

  • 两个对等类之间的结构链接。
  • Class1和Class2之间存在关联。
  • 连接两个类的实线。
    什么是统一建模语言(UML)UML与UML类图的基本概念,MBSE,uml

Aggregation:

聚合:

  • 一种特殊的关联类型。表示“部分-整体”关系。
  • Class2是Class1的一部分。
  • Class1可以关联多个Class2的实例(用*表示)。
  • Class1和Class2的生命周期是独立的。
  • 带有未填充菱形的实线,连接到复合类的关联端点。
    什么是统一建模语言(UML)UML与UML类图的基本概念,MBSE,uml

Composition:

组合:

  • 一种特殊的聚合关系,当整体被销毁时,部分也会被销毁。
  • Class2的生命周期与Class1相连。
  • Class2不能独立存在。
  • 带有填充菱形的实线,连接到复合类的关联端点。
    什么是统一建模语言(UML)UML与UML类图的基本概念,MBSE,uml

Dependency:

依赖:
什么是统一建模语言(UML)UML与UML类图的基本概念,MBSE,uml

  • 如果对一个类的定义的更改可能导致对另一个类的更改(但反过来不成立),则存在依赖关系。
  • Class1依赖于Class2。
  • 带有虚线和开放箭头的线条。
    什么是统一建模语言(UML)UML与UML类图的基本概念,MBSE,uml

Navigability

导航性

箭头表示在一个实例参与关系时,是否可以确定与之相关的另一个类的实例。

上面的图示表明:

  • 给定一个电子表格,我们可以找到它所包含的所有单元格,但是
  • 我们无法从一个单元格中确定它所属的电子表格,即无法从单元格导航到电子表格,所以单元格的导航性是不可行的。
  • 给定一个单元格,我们可以获取相关的表达式和值,但是
    • 给定一个值(或表达式),我们无法找到这些属性所属的单元格,即无法从值或表达式导航到单元格,所以值或表达式的导航性是不可行的。

简而言之,导航性指的是在关系中是否可以通过一个实例来导航到与之相关的其他实例。根据箭头的存在与否,我们可以确定导航性的可行性。

Visibility of Class attributes and Operations

类属性和操作的可见性

在面向对象设计中,有关属性和操作的可见性有一种标记表示法。UML识别了四种可见性类型:public(公共)、protected(受保护)、private(私有)和package(包内)。

在类中的属性和操作名称之前,使用 +、-、# 和 ~ 符号表示属性和操作的可见性。

  • + 表示公共属性或操作
  • - 表示私有属性或操作
  • # 表示受保护属性或操作
  • ~ 表示包内属性或操作

参考:https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-class-diagram/

仅供学习使用,勿用做商业和其他违法用途文章来源地址https://www.toymoban.com/news/detail-589867.html

到了这里,关于什么是统一建模语言(UML)UML与UML类图的基本概念的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 采用 UML 对软件系统进行建模的基本框架

    UML 包括一些可以相互组合为图标的图形元素, 通过提供不同形式的图形来 表述从软件分析开始的软件开发全过程的描述,一个图就是系统架构在某个侧面的 表示,所有的图组成了系统的完整视图。UML 主要提供了以下五类图: ( 1)第一类是用例图(Use Case Diagram),从用户

    2024年02月11日
    浏览(42)
  • UML箭头汇总+IDEA绘制UML类图详细教程+chatGPT辅助生成UML类图教程

    参考:http://www.cnblogs.com/damsoft/archive/2016/10/24/5993602.html 1.UML简介 Unified Modeling Language (UML)又称统一建模语言或标准建模语言。 各个箭头的含义: 简单说就是以图形方式表现模型,根据不同模型进行分类,在UML 2.0中有13种图,以下是他们的主要用途简介: 1.用例图:对系统的使

    2024年02月03日
    浏览(44)
  • 快速读懂UML类图,搞懂类之间的6大关系,轻松绘制UML类图

    一个合格的程序员,要想成长为一个高级工程师,不仅仅需要大量代码的编写,更需要对设计模式具有深入的了解和灵活的应用。从本篇文章开始,我将通过对【尚硅谷设计模式】视频课程的学习总结,尝试以最简单,最通俗易懂的方式完成对设计模式的讲解。 学习设计模式

    2024年02月07日
    浏览(83)
  • UML-类图和类图转化为代码

    提示:文章详细的讲解了类图的四种关系,以及每种关系如何转化为对应的代码。 依赖关系 是一种 使用关系 ,特定事物的改变有可能会影响到使用该事物的其他事物,在需要表示一个事物使用另一个事物时使用依赖关系。 依赖关系使用一个 带箭头的虚线 表示, 箭头指向

    2024年02月02日
    浏览(38)
  • UML的类图规则

    public:+号 private:-号 protected:#号 类图多重关系: 泛化关系: 概念:也就是继承关系。 表示方式:用带空心三角形的直线来表示。 例子:动物和猫,人和老师 关联关系: 概念:用于表示一类对象与另一类对象之间的联系。 子关系: 双向关联: 表示方式:一条直线 例子:客

    2024年02月13日
    浏览(46)
  • UML类图学习

    第一层表示类名(斜体表示抽象类) 第二层表示该类属性和字段 第三层表示该方法 注意:属性、字段或方法前面+表示Public -表示Private #表示protected,如果是静态的可以在前面加上static。 抽象类: 普通类: 第一层表示接口名称。 第二层表示接口方法。 还有一种方法是棒棒

    2024年01月23日
    浏览(42)
  • UML类图(二)

    相信希望,相信自己 上一章简单介绍了 设计模式的原则(一), 如果没有看过,请观看上一章 本文参考文章: 常见UML符号详解 UML (Unified modeling language) 统一建模语言,是一种用于软件系统分析和设计的语言工具, 它用于帮助软件开发人员进行思考和记录思路的结果。 如: 修饰符

    2024年02月09日
    浏览(40)
  • UML 类图

    用动物园的类图结构来举例,先抽象化动物类如图所示: 一个类图包括类名、属性和行为,类名不用解释,在介绍属性和行为前,先了解一下访问权限: ‘ - ’ private:只有类内部的成员才能访问 ‘ + ’ public:类内部和类外部都能访问 ‘ # ’ protected:类内部和它的子类才

    2024年01月20日
    浏览(46)
  • 离散数学:图的基本概念

    本帖子讨论图的基本概念,这一章,我们将利用有序对和二元关系的概念定义图。图分为了无向图和有向图,他们有共性也有区别,请大家注意体会,用联系和辩证的观点去认识。 注意无向图和有向图的表示,最大区别在于边的集合的表示,无向图中边集为无序集VV的子集,

    2024年02月09日
    浏览(53)
  • 图的基本概念

    一个图 G 它可以由顶点集(图 G 中顶点的有限非空集) V 和边集(图 G 中顶点之间的关系集合) E 所组成。图中顶点个数也可以称为图的阶;任何一条边的两头必须连接某一个顶点。图不可以是空,即顶点集 V 一定是非空集,但边集 E 可以是空集。 有向图 无向图 无向图里的

    2024年02月14日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包