种地 发表于 2024-6-24 18:40:30

【UML用户指南】-05-对基本结构建模-类

目录
1、名称(name)
2、属性 (attribute)
3、操纵(operation)
4、对属性和操纵的构造
4.1、衍型
4.2、职责 (responsibility)
4.3、其他特征
4.4、对简单类型建模
5、结构精良的类



在UML中,所有的事物都被建模为类。类是对词汇表中一些事物的抽象。类不是个体对象,而是描述一些对象的一个完整集合。
   强调抽象的最重要的部分:名称、属性和操纵
https://img-blog.csdnimg.cn/direct/1814a33f9a6045d2b68ac2ded84b9d55.png
   类 (class)是对一组具有相同属性、操纵、关系和语义的对象的描述。在图形上,把类画成一个矩形。
1、名称(name)

名称 (name)是一个文字串。单独的名称叫做简单名 (simple name),
用类地点的包的名称作为前缀的类名叫做限定名 (qualified name)。
要求类名的第一个字母通常要大写
https://img-blog.csdnimg.cn/direct/9e4ef05f71544aadb67ef60a304aef4e.png

2、属性 (attribute)

属性 (attribute)是已定名的类的特性,它描述了该特性的实例可以取值的范围。类可以有恣意数目的属性,也可以没有属性。属性描述了正被建模的事物的一些特性,这些特性为类的所有对象所共有。
   属性与聚合的语义有关
属性可以有默认值,可以只读、或者本类的所有对象共享
https://img-blog.csdnimg.cn/direct/ec2d37e48c84463f8f3c33c99253ed7f.png

3、操纵(operation)

操纵 (operation)是一个服务的实现,该服务可以由任何类的对象来请求以影响其行为。
类可以有恣意数目的操纵,也可以没有操纵。
特征标志包含所有参数的名称、类型和默认值,如果是函数,还要包罗返回类型
可以把操纵标志为多态的、稳定的或描述它的可见性
https://img-blog.csdnimg.cn/direct/03dc668503fe49df84675d140a7ce44e.png

4、对属性和操纵的构造

4.1、衍型

为了更好地构造属性和操纵的长列表,可以利用衍型在每一组属性和操纵之前加一个描述其种类的前缀
   衍型又称构造型或者版型,用<<>>体现,用于创建新的结构体
https://img-blog.csdnimg.cn/direct/18e6e3b1fb9749d79167fac3c94c16af.png
4.2、职责 (responsibility)

是类的合约或责任。当创建一个类时,就声明了这个类的所有对象具有相同种类的状态和相同种类的行为。在较高的抽象层次上,这些相应的属性和操纵正是要完成类的职责的特征。
   职责是一个已界说的衍型的例子
对类建模的一个好的起点是详述词汇表中的事物的职责。
职责是自由情势的文本。
要把这些职责转换成能很好地完成这些职责的一组属性和操纵。
 
https://img-blog.csdnimg.cn/direct/b08e3e7cae0449e2aef24904b0ec3b87.png
   职责是一个已界说的衍型的例子
4.3、其他特征



[*]单个属性和操纵的可见性;
[*]与特定语言相关的操纵特征,比方多态的或静态的;
[*]甚至类的对象可能产生或操纵的异常事件。
[*]把类的实现与规约相分离【接口】
[*]设计类的实现时,须要将其内部结构建模为一组毗连起来的部件。
[*]创建复杂的模子,自动类(进程和线程)、制品(物理软件构件)和节点(硬件)
[*]类之间的交互、协作【类图】

4.4、对简单类型建模

在其他极端环境下,所建模的事物可能直接取自用于实现一个解的编程语言。通常这些抽象包罗简单类型,
   如整数、字符和串,乃至自界说的枚举类型。
如下图所示,在UML中可以把这些事物建模为类型或枚举,就像类那样体现,但要显式地用衍型来做标志。
把像整数(用类Int 来体现)简单类型建模为类型,可以用束缚显式地阐明这些事物的值域;必须在UML之外界说简单类型的语义。
像Boolean和Status这样的枚举类型可以建模为枚举,并把它们的字面值罗列在属性分栏中(留意它们不是属性)。
枚举类型也可界说操纵。
https://img-blog.csdnimg.cn/direct/cd57762616a945b6b8d4ad23d40d696b.png
5、结构精良的类

各个类都应该映射到某个有形的或者概念性的抽象。一个结构精良的类,应满足如下条件。
   

[*]为取自问题域或者解域的词汇中的事物提供明确的抽象。
[*]嵌入一个小的、明确界说的职责集,并且能很好地实现它们。
[*]把抽象的规约和它的实现清晰地分开。
[*]简单而且可明确,并具有可适应性和可扩展性。
[*]当用UML绘制一个类时,要遵循如下计谋。

[*]仅表现在该类的语境中对于明确抽象较为重要的类的特性。
[*]按属性和操纵的种类进行分组,以更好地构造其长列表。
[*]把相关的类表现在同一个类图中。


【UML用户指南】-01-UML基本元素的先容(一)-CSDN博客
【UML用户指南】-02-UML基本元素的先容(二)-CSDN博客
【UML用户指南】-03-UML的14种图-CSDN博客
【UML用户指南】-04-从代码到UML的关键抽象-CSDN博客

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 【UML用户指南】-05-对基本结构建模-类