
上QQ阅读APP看书,第一时间看更新
3.3.3 构件视图(Component View)
构件视图用来描述系统中的各个实现模块以及它们之间的依赖关系。构件视图包含模型代码库、执行文件、运行库和其他构件的信息,如果按照内容来划分构件视图,那么构件视图则主要由包、构件和构件图所构成。包是与构件相关的分组。构件是不同类型的代码模块,它是构造应用的软件单元,构件可以包括源代码构件、二进制代码构件以及可执行构件等。在构件视图中也可以添加构件的其他信息,例如资源分配情况以及其他管理信息等。构件图显示构件之间的关系,构件视图主要由构件图构成。一个构件图可以表示一个系统全部或者部分的构件体系结构。从组织内容看,构件图显示了软件构件的组织情况以及这些构件之间的依赖关系。
在构件视图下的元素可以包括各种构件、构件图以及包等。在Rational Rose的浏览器中的构件视图如图3-19所示。
在构件视图中,同样可以创建一些的模型元素。在浏览器中选择Component View(构件视图)选项,单击鼠标右键,就可以看到在该视图中允许创建的一些模型元素,如图3-20所示。

图3-19 构件视图示例

图3-20 在构件视图中可以创建的模型元素
- 包(Package)。包在构件视图中仍然担当的是划分的功能。使用包可以将构件视图中的各种构件进行划分,不同功能构件可以放置在不同的逻辑视图的包中。在将构件放置在某个包中的时候,需要认真考虑包与包之间的划分关系,这样才能达到在以后的开发程序中重用的目的。
- 构件(Component)。构件图中最重要的模型元素就是构件,构件是系统中实际存在的可更换部分,它实现特定的功能,符合一套接口标准并具体实现一组接口。构件代表系统中的一部分物理设施,包括软件代码(源代码、二进制代码或可执行代码)或其等价物(如脚本或命令文件)。在构件视图中,构件使用一个带有标签的矩形来表示。在构件下可以创建连接构件的相关文件和URL地址。在浏览器中选择某个构件,单击鼠标右键,就可以看到在该构件中允许创建的一些模型元素,如图3-21所示。
- 构件图(Component Diagram)。构件图的主要目的是显示系统构件间的体系结构关系。它被认为是在一个或多个系统或子系统中,能够独立的提供一个或多个接口的封装单位。构件必须有严格的逻辑,设计时必须进行构造,其主要思想是能够很容易地在设计中被重用或被替换成一个不同的构件实现,因为一个构件一旦封装了行为,实现了特定的接口,那么这个构件就围绕实现这个接口的功能而存在,而功能的完善或改变意味着这个构件需要改变。在构件图下也可以创建连接构件的相关文件和URL地址。在浏览器中选择某个构件图,单击鼠标右键,就可以看到在该构件图中允许创建的一些模型元素,如图3-22所示。

图3-21 构件下可以创建的模型元素

图3-22 构件图下可以创建的模型元素
- 文件(File)。文件是指能够连接到构件视图中的一些外部文件,用来详细介绍使用构件视图的各种信息。
- URL地址(URL)。URL地址是指能够连接到构件视图的一些外部URL地址。这些地址用于介绍构件视图的相关信息。
在以构件为基础的开发(CBD)中,构件视图为架构设计师提供了一个为解决方案建模的自然形式。构件视图允许架构设计师验证系统的必需功能是由构件实现的,这样确保了最终系统将会被用户接受。