chUML包图及对象图

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用户界面代表 与用户进行交 互的界面
用户界面层
业务逻辑层
数据访问层是程 序中和数据库进 行交互的层
数据访问层
11.1 包图的概念
对复杂系统进行建模时,经常需要 处理大量的类、接口、组件、节点和图,有 必要将这些元素进行分组,就是把语义相近 并倾向于一起变化的元素组织起来加入同一 包,这样方便理解和处理整个模型,而且也 便于轻松地控制这些元素的可见性,使一些 元素在包外可见,一些元素隐藏在包内。
PageName 类名
在第二栏画出所 包含的类图形表示
嵌套包
包的表示法
11.2 包的表示
1. 包的名称
每个包必须有一个与其他包相区别的名称。标识包名称的格式有两种:简 单名和全名。 简单名:仅包含一个包的简单名称;
全名:用该包的外围包的名字作为前缀,加上包本身的名字。
UI 简单名
System:Web:UI
class B { …… }
class C { …… }
}
引入包 定义包
11 .1 包图的概念 11.2 包的表示 11.3 包图中的关系 11.4 阅读包图 11.5 创建包图
11.6 包图建模
11.1 包图的概念
模型的组织结构
先分层再细分成包的方式 系统的三层结构
业务逻辑层用 来处理系统的 业务流程
在windows中文件夹有什么作用? •对文件进行分类管理 •避免了命名冲突
一、包的作用
一个程序往往包含了很多个类,那么如何管理这些类就 成了一个需要解决的问题(分组机制)
这些类可能由不同的程序员进行建立,当把这些类合并 成一个大系统时,往往会产生命名冲突(类名冲突)
包的两个作用:分组机制,命名空间。 Java: 包(package) C#: 命名空间(namespace)
素以某种方式使用提供者包(箭头端的包)的公共元素,也就是说客户包依 赖于提供者包。如果没有指明依赖类型,则默认为《use》关系。
2) 《import》关系:允许一个包中的元素可以单向访问另一包中的元素 《import》关系是最普遍的包依赖类型,说明提供者包的命名空间将被添
加到客户包的命名空间中,客户包中的元素也能够访问提供者包的所有公共元 素。
百度文库
C#中定义命名空间:
namespace 命名空间名 {
…… }
C#中引入命名空间:
using 命名空间名;
using System; using System.Collections.Generic; using System.Text;
namespace scoreA {
class A { …… }
#
-
包B中元素的访问权限
若B引用了A,则B中的任何元素可以访问A中可见性是+的 元素
若B继承了A,则B中的任何元素可以访问A中可见性是#的 元素
可见性是-的元素,只能被同一个包中的其它元素访问
Public(+): 可在其他任何包中使用 Private(-): 只能在该包中使用 Protected(#): 可以在该包和该包的子包中使用
作、用例,甚至是其它子包或图 。一个元素只能属于一个包。
11.2 包的表示
UML中,用文件夹符号来表示一个包,它包含2栏。
包名放在第二栏
包名放在第一栏
PageName
Rose常用表示法 System:Web
UI class
PageName ClassName-1 ClassName-2 …..
第二栏列出 包含的类名
11.1 包图的概念
1.包图 包图是描述包与包之间关系的图。包图可以包括注
释、约束。包间的关系有依赖关系和泛化关系。
包图
11.1 包图的概念
2. 包图的作用 1)对语义上相关的元素进行分组。 2)提供配置管理单元。 3)在设计时,提供并行工作的单元。 4)提供封装的命名空间。
3. 包图中的元素 在包中可以拥有各种其他元素,包括类、接口、构件、节点、协
《import》关系使命名空间合并,当提供者包中的元素具有与客户包中的 元素相同的名称时,将会导致命名空间的冲突。这也意味着,当客户包的元素 引用提供者包的元素时,将无需使用全称,只需使用元素名称即可。
11.3 包的导入
当包A将包B导入时,包A中的元素可以直接访问包B中 的元素,而不必在每次使用时用完整的路径名。
11.2 包的表示
包内元素的可见性,标识了外部元素访问包内元素的权限。
包元素的可见性
11.2 包的构造型
构造型
用途
虚包(façade)
描述一个只引用其他包内元素的包
框架(framework) 桩(stub)
子系统(subsystem) 系统(system)
描述一个主要由模式组成的包
描述一个作为另一个包的公共内容代理 的包
描述一个表示正在建模中的整个系统的 一个独立部分的包
描述一个表示正在建模中的整个系统的 包
11.3 包图中的关系
包图中的关系包括依赖关系和泛化关系。
1 依赖关系
依赖关系又可以分为4种。在依赖关系中 ,我们把箭尾端的包称为客户包, 把箭头端的包称为提供者包。
1)《use》关系 《use》关系是一种默认的依赖关系 ,说明客户包(箭尾端的包)中的元
在包中表示拥有的元素时,有两种方法:一是在第二栏中列出所属元素 名,二是在第二栏中画出所属元素的图形表示。
11.2 包的表示
3. 包的可见性 像类中的属性和方法一样,包中的元素也有可见性,
包内元素的可见性控制了包外部元素访问包内部元素的权 限。
可见性与访问权限(假设包B中的元素访问包A中的元素)
包A中元素的可见 性 +
含路径名 (全名)
11.2 包的表示
2. 包的元素
在一个包中可以拥有各种元素,包括类、接口、构件、节点、协作、用 例,甚至是其他包或图。这是一种组成关系,意味着元素是在这个包中声明 的,一个元素只能属于一个包。
每一个包就意味着一个独立的命名空间,两个不同的包,可以具有相 同的元素名,但由于所位于的包名不同,因此其全名仍然是不同的。
//using space1; //using space2;
namespace space3 //第三个命名空间 { …… space1.DownCount dc = new space1.DownCount(10); space2.UpCount uc = new space2.UpCount(10); …… }
相关文档
最新文档