Page 54 - 计算机应用软件开发技术研究
P. 54
计算机应用软件开发技术研究
Research on Computer Application Software Development Technology
对象为基础的构件实现技术日趋成熟,CBD 已经成为现今软件复用实践的研究
热点,被认为是最具潜力的软件工程发展方向之一。
下面介绍一些基于构件开发的相关概念,包括构件、接口、契约、构件框架
等,另外还介绍 CBD 开发模式以及构件技术和对象技术的关系。
1.构件
Szyperski 把构件定义为“软件构件是一个仅带特定契约接口和显式语境
依赖的结构单元”,同时他还写道:“软件构件可以独立部署,易与第三方整
合。”根据这个观点,可以认为构件由一方定义其规格说明,被另一方实现,然
后供给第三方使用。
2.接口和契约
接口(Interface)是用户与构件发生交互的连接渠道,第三方只能通
过构件接口的规格说明理解和复用构件,接口规格说明也是一种“契约”
(Contract),它足够精确地描述构件实现的功能,同时又不把构件限定于唯一
的实现方法,这种不确定性带来解决方案的灵活性。此外,虽然构件可以独立部
署,但是一个构件可能会用到其他构件或平台提供的服务,或者说基于构件的软
件系统中通常是多个构件协作完成一定功能,所以构件依赖于组装环境或称为语
境(Context)。
3.构件框架
构件基础设施(Infrastructure)是异构构件互操作的标准和通信平台,构件
框架(Framework)是构件实例“即插即用”的支撑结构。通过一定的环境条件
和交互规则,构件框架允许一组构件形成一个“孤岛”,独立地与外部构件或其
他框架交互和协作,因此构件框架及其内含的构件也可以视为一个构件,于是构
件通过不断地迭代和合成,构成一个结构复杂的应用系统。目前,有多个组织和
公司制定了构件基础设施的标准或开发了相关产品,也为构件、构件框架和接口
建立了模型和技术规范,其中 OMG CORBA、Microsoft COM/DCOM(或.NET)
以及 Sun JavaBean/EJB 占主导地位。
4.CBD 开发模式
CBD 遵循“购买而不创建(Buy,don’t Build)”的开发哲学,让人们从
“一切从头开始”(Build From Scratch)的程序编制转向软件组装。基于构件的
开发任务包括创建、检索和评价、适配、组装、测试和验证、配置和部署、维护
·42·

