- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UML 2 中的阴和阳
在 UML 2 中有二种基本的图范畴:结构图和行为图。每个 UML 图都属于这二
个图范畴。结构图的目的是显示建模系统的静态结构。它们包括类,组件和(或)
对象图。另一方面,行为图显示系统中的对象的动态行为,包括如对 象的方法,
协作和活动之类的内容。行为图的实例是活动图,用例图和序列图
大体上的结构图
如同我所说的,结构图显示建模系统的静态结构。关注系统的元件,无需考虑时
间。在系统内,静态结构通过显示类型和它们的实例进行传播。除了显示系统类
型和它们的实例,结构图至少也显示了这些元素间的一些关系,可能的话,甚至
也显示它们的内部结构。
贯穿整个软件生命周期,结构图对于各种团队成员都是有用的。一般而言,这些
图支持设计验证,和个体与团队间的设计交流。举 例来说,业务分析师可以使
用类或对象图,来为当前的资产和资源建模,例如分类账,产品或地理层次。架
构师可以使用组件和部署图,来测试/确认他们的设计是 否充分。开发者可以使
用类图,来设计并为系统的代码(或即将成为代码的)类写文档。
特殊的类图
UML 2 把结构图看成一个分类;这里并不存在称为 “结构图”的图。然而,类图
提供结构图类型的一个主要实例,并为我们提供一组记号元素的初始集,供所有
其它结构图 使用。由于类图是如此基本,本文的剩余部分将会把重点集中在类
图记号集。在本文的结尾,你将对于如何画UML 2 类图有所了解,而且对于理解
在后面文章中将涉及的其他结构图有一个稳固的基础。
基础
如先前所提到的,类图的目的是显示建模系统的类型。在大多数的 UML 模型中
这些类型包括:
• 类
• 接口
• 数据类型
• 组件
UML 为这些类型起了一个特别的名字:“分类器”。通常地,你可以把分类器当
做类,但在技术上,分类器是更为普遍的术语,它还是引用上面的其它三种类型
为好。
类名
类的 UML 表示是一个长方形,垂直地分为三个区,如图 1 所示。顶部区域显示
类的名字。中间的区域列出类的属性。底部的区域列出类的操作。当在一个类图
上画一个类元素时,你必须要有顶端的区域,下面的二个区域是 可选择的(当
图描述仅仅用于显示分类器间关系的高层细节时,下面的两个区域是不必要的)。
图 1 显示一个航线班机如何作为 UML 类建模。正如我们所能见到的,名字是
Flight,我们可以在中间区域看到Flight 类的3 个属性:flightNumber,
departureTime 和 flightDuration。在底部区域中我们可以看到Flight 类有两
个操作:delayFlight 和 getArrivalTime。
图 1: Flight 类的类图
类属性列表
类的属性节(中部区域)在分隔线上列出每一个类的属性。属性节是可选择的,
要是一用它,就包含类的列表显示的每个属性。该线用如下格式:
name : attribute type
flightNumber : Integer
继续我们的Flight 类的例子,我们可以使用属性类型信息来描述类的属性,如
表 1 所示。
表 1:具有关联类型的Flight 类的属性名字
属性名称 属性类型
flightNumber Integer
departureTime Date
flightDuration Minutes
在业务类图中,属性类型通常与单位相符,这对于图的可能读者是有意义的(例
如,分钟,美元,等等)。然而,用于生成代码的类图,要求类的属性类型必须
限制在由程序语言提供的类型之中,或包含于在系统中实现的、模型的类型之中。
在类图上显示具有默认值的特定属性,有时是有用的(例如,在银行账户应用程
序中,一个新的银行账户会以零为初始值)。UML 规范允许在属性列表节中,通
过使用如下的记号作为默认值的标识:
name : attribute type = default value
举例来说:
balance : Dollars = 0
显示属性默认值是可选择的;图 2 显示一个银行账户类具有一个名为 balance
的类型,它的默认值为0。
图 2:显示默认为0 美元的balance 属性值的银行账户类图。
类操作列表
类操作记录在类
文档评论(0)