【IT168 技术文章】
网络计算带领软件产业进入了一个新的时代,商机无限,但同时挑战也无限。以电子商务为代表的技术潮流正将大到企业计算、小到个人数字代理的各种应用,在世界范围内联结起来,软件制造业正面临着一些新的课题,如复杂的分布环境、灵活的应用模式、广泛的包容性等,传统的软件设计思想已远远不够。
在这一背景下,构件技术应运而生,并逐渐炙手可热。不同于OO技术强调对个体的抽象,构件则更推广了对象封装的内涵,侧重于复杂系统中组成部分的协调关系,强调实体在环境中的存在形式,形成一个专门的技术领域。
中间件作为存在于系统软件与应用之间的特殊层次,抽象了典型的应用模式,从而使应用软件制造者可以更多地将思路放在业务逻辑中,并基于标准的形式进行开发,这样就使软件构件化成为可能。一些工业标准的推出,进一步使中间件成为可复用构件的运行框架,加速了软件复用的现实化进程。
本文从构件在现实软件发展中的地位展开,分析了中间件在系统组织层次中所起的作用,阐述了构件化思想对中间件本身的促进作用,提出了一种构件化中间件的发展模式。
构件技术的基本思想
OO技术是在“"数据+算法”的基础上提升了对事物的认识方法,对象的概念符合人们认识世界的习惯。而构件的思想则更多地将重点从建模本身发展到对软件生产的考虑,即构件可以在应用领域的软件生产中作为零件纳入新的体系中被重用。因此,构件是OO思想的沿袭和扩展,认识事物的角度从对象个体本身上升到个体在群体中的作用。
构件有几个基本属性:
1、构件是可独立配置的单元,因此构件必须自包容。
2、构件强调与环境和其他构件的分离,因此构件的实现是严格封装的,外界没机会或没必要知道构件内部的实现细节。
3、构件可以在适当的环境中被复合使用,因此构件需要提供清楚的接口规范,可以与环境交互。
4、构件不应当是持续的,即构件没有个体特有的属性,理解为构件不应当与自身副本区别,在任何环境中,最多仅有特定构件的一份副本。
可以看出,构件沿袭了对象的封装特性,但同时并不局限在一个对象,其内部可以封装一个或多个类、原型对象甚至过程,结构是灵活的。构件突出了自包容和被包容的特性,这就是作为软件生产线上作为零件的必要特征。
构件技术的关键点涉及构件做什么、构件交互的规则、构件存在的环境等,相应在现实中有各种支撑性的技术,如:
1、构件模型,研究构件的本质特征及构件间的关系;
2、构件描述语言,以构件模型为基础,解决构件的精确描述、理解和组装问题;
3、构件分类与检索,研究构件的分类策略、组织模式及检索策略,建立构件库系统,支持构件的有效管理;
4、构件复合组装,包括源代码级的组装和基于构件对象互操作性的运行级组装;
5、标准化,包括构件模型的标准化和构件库的标准化;
6、软件构架,研究如何快速、可靠地应用可复用构件系统进行系统构造的方式,着重于软件系统自身的整体结构和构件间的互联。
中间件:构件存在的基础
构件技术在最初时更多是作为一种思想存在,进而才在一些关键的环节上发展出解决问题的技术分支。构件的存在某种程度上极大地依赖了构架技术,或环境、基础设施、计算平台,只有在适当的构架中,软件才有可能被抽象和隔离,最终成为构件。因此,单独讨论构件是抽象而空洞的。构架不是操作系统、数据库或网络协议,也不完全是应用,而是在某种特定意义上的构件运行容器,层次上介于应用和基础设施之间。
中间件,从本质上是对分布式应用的抽象,因而抛开了与应用相关的业务逻辑的细节,保留了典型的分布交互模式的关键特征。经过抽象,将纷繁复杂的分布式系统经过提炼和必要的隔离后,以统一的层面形式呈现给应用。应用在中间件提供的环境中可以更好地集中于业务逻辑上,并以构件化的形式存在,最终自然而然地在异构环境中实现良好的协同工作。
不难看出,中间件与构架实际是从两种不同的角度看待软件的中间层次,可以这样说:中间件就是构架,或构件模型的具体实现,是构件软件存在的基础,中间件促进了构件化软件。从下面列举的一些中间件的特征,可以看出,中间件与构架本质上是一致的。
分享到:
相关推荐
#### 一、软件构件与中间件基本概念 **软件构件**是指具有明确接口定义且能够独立完成特定功能的软件单元,它可以被视为软件工程中的“预制构件”,能够被重复使用于不同的项目中。软件构件的核心优势在于提高了...
根据给定文件的信息,我们可以提炼出以下几个...以上是根据给定文件总结的关于“软件构件与中间件技术”的关键知识点,涵盖了分布式系统的架构、中间件的功能、CORBA和EJB的相关概念以及WebService的基础等方面的内容。
《软件构件与中间件技术深度解析》 在信息化飞速发展的今天,软件构件与中间件技术作为支撑现代软件系统高效运行的重要基石,扮演着至关重要的角色。本篇将结合武汉理工大学“软件构件与中间件技术”课程的学习资料...
在IT行业中,软件构件与中间件技术是现代软件开发中的重要组成部分,对于提升软件的复用性、可扩展性和系统性能具有关键作用。本压缩包包含的资源是针对武汉理工大学该课程的学习资料,旨在帮助学生深入理解和掌握...
吉林大学,软构件大作业实验报告
在软件开发领域,软件构件与中间件...以上内容总结了软件构件与中间件技术的核心知识点,旨在帮助学习者理解并掌握servlet、JSP、JSF以及中间件技术的基本原理和应用方法,为进一步深入学习和实际开发提供坚实的基础。
在软件开发领域,构件与中间件技术是构建大型分布式系统的关键组成部分。构件技术允许开发者复用预先封装好的软件组件,提高开发效率和软件质量。中间件则扮演着连接不同软件组件的角色,确保它们之间的通信顺畅。 ...
### 武汉理工大学软件构件与...综上所述,理解和掌握软件构件与中间件的相关概念和技术对于软件工程专业的学生来说至关重要。这些知识点不仅有助于学生掌握当前的软件开发实践,也为他们未来的职业生涯打下坚实的基础。
软件构件与中间件 软件构件是一种软件开发方法,它强调软件重用和构件之间的组合。软件构件可以分为不同的层次,包括语法规约、语义规约和非功能性规约。构件之间的连接可以通过接口、 계약和适配器来实现。 面向...
软件构件与中间件技术.ppt
技术资料分享《软件构件与中间件技术》全真试题.zip