Logo

郎哥编程

构件的基本思想

2016-02-22 14

构件与面向对象技术中的对象概念之间的关系。

1、构件的概念:

所谓构件,是指可以被独立部署的结构单元,表示构件时基于某种结构与运行模型的,独立于具体应用系统的,可以被另外发布或交付的功能单元,是系统的一个物理的、可单独替换或升级的部分,是对一系列软件操作或实现的包装,这种包装可以用来构造应用程序或更大的构件。

2、构件的要素:

1、规范说明

2、一个或多个实现

3、受约束的构件标准

4、包装方法

5、部署方法

3、构件的来源:

1、从现有的构件中获取符合条件的构件,直接使用或者作适应性修改,得到可复用的构件。

2、提取现有遗产系统的有用功能,这些功能可以包装成构件以在未来使用。

3、从第三方市场上购买现成的商业构件。

4、为满足现有的业务需要从头专门开发的构件。

4、构件的分类:

(1)从构件性质来看,构件可以分为抽象构件和具体构件。

①抽象构件:该类构件是适应领域要求,对同领域一族具有共性和变化性的构件进行的抽象。在抽象构件的接口中有描述领域变化性的成分。抽象构件一般是不够完整的,在使用之前必须具体化。

②具体构件:该类构件是相对于抽象构件而言的,具体构件描述应用系统固定的构成成分,其接口不具有描述变化性的成分,它可以不加修改地直接复用。使用具体构件,需要做的只是输入该构件和它所依赖的其他构件。

(2)根据构件重用的方式,通常可以分为白匣子、灰匣子和黑匣子三类。

①白匣子:提供构件的同时也提供实现构件的全部源代码。

②灰匣子:灰匣子只提供有关界面部分的源代码,开发人员在应用构件时对构件的内部实现是不清楚的,只能在接口界面上做一些用户化的工作。

③黑匣子:完全不提供源代码,其他构件只能通过构件接口访问这个构件。

(3)根据构件的使用范围,可分为专用构件和通用构件。

①专用构件:针对某个领域中的某一特定系统设计开发的构件。

②通用构件:可以被某领域所有组织共享的构件。

(4)根据构件的粒度大小,可以分为分布式构件、业务构件和系统级构件。

①分布式构件:这是粒度最小的构件,同时分布式构件也是基于构件的开发方法中一个关键的概念,它作为一种设计工件,在开发生命周期的早期阶段就可以看到,是构建和部署的一个基本单元。

②业务构件:这是中粒度构件,实现单个业务概念的构件。整个基于构件的开发是以业务构件概念为核心的。

③系统级构件:基于构件的开发方法中粒度最大的构件。它将业务构件构成的系统进行封装,将该系统作一个整体当作黑盒处理,并且它具有清晰的设计接口。

(5)根据构件的功能用途,可以分为系统构件、支撑构件和领域构件

①系统构件:在整个构件集成环境和运行环境都使用的构件。

②支撑构件:在构件集成环境及构件管理系统中使用的构件。

③领域构件:为专门领域开发的构件。

(6)根据构件重用时状态,可以分为动态构件、链接构件和静态构件

①动态构件:在软件运行时可以动态嵌入的构件。

②链接构件:如对象链接和嵌入库(OLE)、动态链接库(DLL)。

③静态构件:如源代码、系统分析构件、系统设计构件。

5、构件的粒度

(1)构件粒度的概念

  一般认为:构件粒度是用来描述构件所提供特征的粗细程度的量化,或者说是构件所提供特征的计算量的大小,但通常难以精确度量。

(2)构件粒度的划分

大粒度构件、中粒度构件、小粒度构件

(3)构件粒度与业务模型之间的关系

构件的粒度与构件所实现的业务模型的稳定性密切相关,模型越稳定,可能发生变化的机会就越少,那么相应的构件所需要包容的变化就越少,构件的粒度就可以越大;反之亦然。

6、软件构件技术的研究内容

构件获取:有目的地构件生产和从已有系统挖掘提取构件。

构件模型:研究构件的本质特征及架构间的关系。

构件描述语言:以构件模型为基础,解决构件的精确描述、理解及组装问题。

构件分类与检索:研究构件分类策略、组织模式及检索策略,建立构件库系统,支持、构件的有效管理。

构件复合组装:在构件模型的基础上研究构件组装机制,包括源代码级的组装基于运行级的组装。

标准化:构件模型的标准化和构件库系统的标准化。


代码在线纠错(通义千问 qwen-max)

支持粘贴多个代码文件,提交后由阿里云通义千问自动分析代码漏洞、语法错误、逻辑问题并给出修改建议。
您已解锁 AI 代码纠错功能,可正常使用!

评论区

登录 后发表评论
暂无评论