UML – 概述

UML – 概述

UML是一种用于指定、可视化、构造和记录软件系统工件的标准语言。

UML由Object Management Group(OMG)创建,UML 1.0规范草案于1997年1月提交给OMG。

OMG不断努力创造一个真正的工业标准。

  • UML是 统一建模语言 的缩写

  • UML与其他常见的编程语言如C++、Java、COBOL等不同。

  • UML是一种用于制作软件蓝图的象形语言。

  • UML可以被描述为一种通用的可视化建模语言,用于可视化、指定、构建和记录软件系统。

  • 尽管UML通常用于软件系统建模,但它并不局限于此。它也被用来为非软件系统建模。例如,制造单位的工艺流程等。

UML不是一种编程语言,但可以用工具用UML图生成各种语言的代码。UML与面向对象的分析和设计有直接关系。经过一些标准化,UML已经成为OMG的标准。

UML的目标

一幅图胜过千言万语,这个成语绝对适合描述UML。面向对象的概念比UML引入得更早。在那个时候,还没有标准的方法论来组织和巩固面向对象的开发。就在那时,UML出现了。

开发UML的目标有很多,但最重要的是定义一些通用的建模语言,所有建模者都可以使用,而且还需要使其简单易懂,易于使用。

UML图不仅是为开发人员制作的,也是为商业用户、普通人和任何有兴趣了解系统的人制作的。该系统可以是一个软件或非软件系统。因此,必须清楚,UML不是一种开发方法,而是伴随着使其成为一个成功系统的过程。

总之,UML的目标可以被定义为一个简单的建模机制,在当今复杂的环境中为所有可能的实用系统建模。

UML的概念模型

为了理解UML的概念模型,首先我们需要澄清什么是概念模型? 以及为什么需要概念模型?

  • 一个概念模型可以被定义为由概念和它们的关系组成的模型。

  • 概念模型是绘制UML图之前的第1步。它有助于理解现实世界中的实体以及它们之间的相互作用。

由于UML描述的是实时系统,因此建立一个概念模型,然后逐步进行,是非常重要的。通过学习以下三个主要元素,可以掌握UML的概念模型-

  • UML的构造块
  • 连接构件的规则
  • UML的常用机制

面向对象的概念

UML可以说是面向对象(OO)分析和设计的继承者。

一个对象同时包含数据和控制数据的方法。数据代表对象的状态。一个类描述了一个对象,它们也形成了一个层次结构来模拟现实世界的系统。层次结构表现为继承,类也可以根据需求以不同的方式进行关联。

对象是存在于我们周围的现实世界的实体,基本概念如抽象、封装、继承和多态性都可以用UML来表示。

UML足够强大,可以表示面向对象分析和设计中存在的所有概念。UML图只表示面向对象的概念。因此,在学习UML之前,详细了解OO概念变得很重要。

以下是面向对象世界的一些基本概念

  • 对象 – 对象代表一个实体和基本构件。

  • 类 – 类是一个对象的蓝图。

  • 抽象 – 抽象代表一个现实世界实体的行为。

  • 封装 – 封装是将数据捆绑在一起并从外部世界隐藏它们的机制。

  • 继承 – 继承是一种从现有的类中制造新的类的机制。

  • 多态性– 它定义了以不同形式存在的机制。

OO分析和设计

OO可以被定义为一种调查,更具体地说,它是对对象的调查。设计意味着对已确定的对象进行协作。

因此,理解OO分析和设计的概念是很重要的。OO分析的最重要的目的是确定要设计的系统的对象。这种分析也是针对现有系统进行的。现在,只有当我们能够以一种可以识别对象的方式开始思考时,有效的分析才有可能。在确定了对象之后,他们之间的关系被确定下来,最后产生设计。

OO分析和设计的目的可以描述为

  • 识别一个系统的对象。

  • 识别它们的关系。

  • 制作一个设计,这个设计可以用OO语言转换为可执行文件。

有三个基本步骤来应用和实现OO概念。这些步骤可以被定义为

OO Analysis → OO Design → OO implementation using OO languages

以上三点可以详细描述为—

  • 在OO分析过程中,最重要的目的是识别对象并以适当的方式描述它们。如果这些对象被有效地识别,那么接下来的设计工作就很容易了。这些对象应该被确定为有责任的。职责是指对象所执行的功能。每一个对象都有一些需要履行的责任。当这些责任被协作时,系统的目的就得到了实现。

  • 第二阶段是OO设计。在这个阶段,重点放在需求和它们的实现上。在这个阶段,对象根据它们的预期关联被协作起来。关联完成后,设计也就完成了。

  • 第三阶段是OO实现。在这个阶段,设计是用OO语言实现的,如Java、C++等。

UML在OO设计中的作用

UML是一种建模语言,用于软件和非软件系统的建模。尽管UML被用于非软件系统,但重点是对OO软件应用的建模。到目前为止,所讨论的大多数UML图都是用来对不同的方面进行建模,如静态、动态等。现在,不管是什么方面,人工制品都不过是对象。

如果我们看一下类图、对象图、协作图、交互图,基本上都是基于对象设计的。

因此,理解OO设计和UML之间的关系是非常重要的。根据需求,OO设计被转化为UML图。在详细了解UML之前,应该正确学习OO概念。一旦完成了OO分析和设计,下一步就非常容易了。来自OO分析和设计的输入是对UML图的输入。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程