统一建模语言UML实验报告 联系客服

发布时间 : 星期六 文章统一建模语言UML实验报告更新完毕开始阅读40220d284693daef5ff73d61

误就会导致另一个程序集也编译不通过,于是让这个编译错误就会循环传递,使得编译器告诉我们:两个程序集不能编译通过。(如图1)

图1 AssemblyA 与AssemblyB之间的依赖关系 下面是解决方案来解除这种循环依赖关系:

1.将产生依赖的类型分离出来,放到另一个新的程序集AssemblyC中去。

2.使用接口来解除循环依赖: 这种方式的具体做法(如图2):

2.1. 从被依赖的类中,提取出一个接口放到新的程序集中(接口中的成员是依赖类中所依赖的,当然被依赖的类是实现了该接口的)。 2.2 依赖类去引用2.1中新建的程序集中的新接口。

图2 使用接口解除两个程序集的循环依赖关系

6、 建立包图应注意哪些问题?

答: 1.包的命名要简单、具有描述性。2.应用包是为了简化3.包应该连贯。4.在包上用版型注明架构层。5.避免包间的循环依赖。6.包依赖应该反映内部关系

7、 根据下图判断下面哪句话正确的说明了包之间的依赖关系。

A) 对Package1包中的元素做了修改后,需检查Package2包中

的元素和Package3包中的元素是否要做相应修改。 B) 对Package1包中的元素做了修改后,需检查Package2包中

的元素是否需要做相应修改,如果是,则需继续检查是否Package3包中元素也要做相应修改。

C) 对Package3包中的元素做了修改后,需检查Package2包中

的元素是否需要做相应修改,如果是,则需继续检查是否Package1包中元素也要做相应修改。

D) 对Package3包中的元素做了修改后,需检查Package2包中

的元素和Package1包中的元素是否要做相应修改。 答:C

8、 下面包图设计中是否存在问题?应如何改进。

A)

B

答:存在问题,出现了循环依赖关系,A图中B不能即依赖C同时还依赖E。

B修改后:

[分析与讨论]

1、结合一个具体例子,分析UML建模过程中包图所起的作用。

;

答:作用:

1)对语义上相关的元素进行分组; 2)定义模型中的“语义边界”; 3)提供配臵管理单元;

4)在设计时,提供并行工作的单元;

5)提供封装的命名空间,其中所有名称必须惟一