产品经理必学UML:类图

?

  

 来源:每个人都是产品经理

产品经理必须学习UML:类图

本文主要介绍UML静态视图中的类图,包括类图的概念,目的和相关元素,供大家参考和学习。

UML(统一建模语言),也称为统一建模语言或标准建模语言,可以看作是在系统设计阶段引用开发的一种方式,其中许多都需要使用面向对象的编程。

上图显示了产品经理经常使用的UML图,包括静态视图(类图)和动态视图(用例图,状态图,序列图和活动图)。静态视图主要用于分析业务概念和描述静态场景。动态视图描述业务行为并分析动态方案。

本文重点介绍类图。

首先,概念

类图(ClassDiagrame)是描述类,接口,协作以及它们之间关系的图,用于显示系统中每个类的静态结构。

类图包含七个元素:类,接口,协作,依赖关系,泛化关系,实现关系和关联。

第二,使用

对系统词汇进行建模(建立抽象系统词汇,如班级,学生);

建模简单的协作(可视化和详细说明系统词汇中的内容如何协同工作,例如班级和学生的关系);

为逻辑数据库模式建模。

三,类图元素

在类图中,类由矩形表示,并分为三个部分:名称部分,属性部分和操作部分(操作,也称为方法)。

1.班级名称(ClassName)

该类的名称是一个文本字符串,分为简单名称和路径名称。单个名称(单个名称)是一个没有冒号的单独名称; pathname(pathname)的前缀是该类所在的包的名称。

简单名称,路径名称

2.属性

描述类在软件系统中表示的特征。 UML中类属性的语法:[visibility]属性名称[:type] [=初始值] [{attribute string}],

如[-name: string]。[]的部分是可选的。

(1)可见性

它包括三种类型:公共,私有和受保护。

可以在外部查看和使用共享类型,使用“+”;私有类型无法从其他类访问,由“ - ”;

表示

受保护的类型通常用于泛化和专门化,用“#”表示。如果没有符号,则表示未定义属性的可见性

(2)属性名称

它由名词或名词短语组成,用于描述它所属类的特征。按照惯例,单字符属性名称是小写的,并且需要合并多个单词,并且除第一个单词之外的单词的第一个字母是大写的,例如className。当然,如果是中国人,这是没有必要的。

(3)输入

典型的属性类型有:整数(int),布尔值,实数和枚举类型。完全定义类的属性时,任何对象的状态由这些属性的特定值确定。

(4)初始值

确保系统的完整性;为用户提供易用性。

(5)属性字符串

有关该物业的其他信息。

3.操作(

类的操作是类的对象可以执行的事务的抽象,这相当于服务的实现。 UML中类操作的语法:[visibility]操作名[(参数表)] [:返回类型] [{attribute string}],例如[+ query(): song],其中[]中的部分是选定的。

(1)可见性

它包括四种类型:公共,私有,受保护和包。

公共类型是调用对象可以访问操作所在的包,并且可以用“+”调用操作;私有类型只能由属于同一个类的对象调用,并用“ - ”;

表示

受保护的类型,即只有子类的对象可以调动父类,用“#”表示;

包中的公共类型只能由同一包中的对象调用,并用“”表示。

(2)操作名称

动词或动词短语,描述它所属的类的行为。合同与属性名称相同。

(3)参数列表

引用一些定义操作输入的顺序属性。定义由“name:type”获取,多个参数由逗号分隔。

(4)返回类型

大多数编程语言仅支持一个返回值,即最多一个返回类型。

4.接口(接口)

接口是类或组件提供的用于执行特定功能的操作的集合。接口描述类或组件的外部可见操作。通常,类实现一个或多个接口。

这个定义似乎很无聊。流行的观点是界面就像螺丝和螺母。它是类的规范,类和类之间的约束和协议。

对于一些小程序,通常不需要界面,因为功能变化对整体影响不大;但对于大型程序,一旦用户需要更改功能,并且功能之间的耦合很高,就会导致整个程序。影响,如果使用界面,您可以考虑使用前需要实现的所有功能,即功能的打包。在需求更改之后,只需要重写实现类。同样,其他人只需要调用接口,而不需要知道类的消息。

5.关系(Ralationship)

(1)依赖关系

表示一个类元素依赖于某种形式的其他类元素,它表示一个场景,如图所示,元素(提供者)的某些更改会影响或向其他元素(客户)提供消息,即客户依赖在某种形式的提供者。

(2)泛化关系

表示一般元素和特殊元素之间的层次关系,描述“isakindof”(一种.)的关系,例如汽车是一种类型的车辆。在类中,泛型元素称为超类或父类,而特殊元素称为子类。

(3)关联关系

表示一组具有共同结构特征,行为特征,关系和语义的链接。它是一种结构关系,表示一件物品与另一件物品之间的关系。例如,学生和大学,学生在大学学习,大学包括很多学生,所以你可以建立学生和大学之间的关系。

(4)聚合关系

是一种特殊的结社形式。表示整体关系和部分关系之间的关联。简而言之,关联中的一组元素构成了一个更大,更复杂的单元。描述“hasa”的关系。对于大学和学院来说,大学是由许多大学组成的,所以两者之间存在着趋同。

(5)实现关系

表示规范及其实现之间的关系,将一个模型元素连接到另一个模型元素,例如类和接口。如打字员和键盘,键盘确保其部分行为可以实现打字员的行为。

四,连接关系图摘要

由于连接关系中使用的图形是相似的,基本上由箭头和线组成,因此很容易混淆,并在此汇总以供查看。

五,小练习 - 简单的听歌系统类图

用户和歌手:协会,1位用户可以关注0到n位歌手;

用户和歌曲:关联,1个用户可以播放或收集0到n首歌曲;

歌曲和歌手:协会,1首歌对应至少1位歌手;

歌曲和歌曲列表:聚合关系,1到n首歌曲组成歌曲列表;

用户实现接口注册和登录。

你第一次写,如果有什么不对的地方,欢迎批评和纠正。后续将更新用例图,活动图等,您可以注意等待。

本文最初由

ca181亚洲城