构件是系统中逻辑的并且可替换的部分,它遵循并提供一组接口的实现。
好的构件用定义良好的接口来定义灵活的抽象,这样就可能容易地用新的兼容构件代替旧的构件。
接口是连接逻辑模型和设计模型的桥梁。例如,可以为逻辑模型中的一个类定义一个接口,而这同一个接口将延续到一些实现它的设计构件。
通过把构件上的端口连接在一起,接口允许用小的构件来建造对大构件的实现。
1. 入门
可以把应用程序做成一个单一的大单元,但是当需求改变时,它太僵化并很难修改。此外,也无法利用一些现有的功能。即使一个现存的系统有很多需要的功能,它也有许多不需要的部分,且很难或不可能剔除。对于软件系统的解决方法类似于电气系统:把程序做成可灵活连接起来的、定义良好的构件,当需求发生变化时,这些构件可以单独被替换。
2.术语和概念
接口(interface)是一组操作的集合,它指明了由类或构件所请求或者所提供的服务。
构件(component)是系统中可替换的部分,它遵循并提供了一组接口的实现
端口(port)是被封装的构件的特定窗口,遵循指定接口的构件通过它来收发消息。
内部结构(internal structure)是靠以特定方式连接起来的一组部件来表示的构件实现。
部件(part)是对角色的描述,该角色组成构件的局部实现。在构件的实例中,有相应的部件实例
连接件(connector)是在构件语境中的两个部件或者端口之间的通信关系。
2.1构件和接口
接口是一组操作的集合,用于指明类或构件的一个服务。构件和接口之间的关系是非常重要的。几乎所有 流行的基于构件的操作系统工具(如COM+、CORB