面向需求的构件应用
基于构架的构件化软件开发应当是面向需求的,即设计者集中精力于业务逻辑本身,而不必为分布式应用中的通信、效率、互操作、可靠性、容错性、完整性等大量与业务无直接关系但又非常重要的问题,而耗费大量的精力,理想的构架在这些方面应当为构件软件提供良好的运行环境。事实上,这些正是中间件所要解决的问题,因此,基于中间件开发的应用真正是面向需求的,从本质上符合构件化设计的思想。
使业务逻辑容易划分
服务器构件要求有很好的业务自包容性,应用开发者可以按照不同的业务进行功能的划分,体现为不同的接口或交互模式。针对每种业务的设计和开发是可以独立进行的。
构架和中间件有同样的目标:提供业务的分隔和包容性。例如:消息中间件规定了消息是有属性的,其中部分属性则与业务的划分有关,某种服务构件只进行相应类型的消息交互。至于如何保证业务的分类运行与管理,则是中间件的事情。
因此可以说,中间件和构架都实现了构件向应用的集成。
构件的封装、设计与实现隔离
构件对外发生作用或构件间的交互,都是通过规范定义的接口进行,构件使用者只需要知道构件的接口,而不关心其内部实现,这是设计与实现分开的关键。构架就应当提供构件交互的规则,并基于这些规则实现类似容器的标准环境。
中间件在分布交互模式上都规定了接口(或类似)机制,如IDL就是描述接口的语言规范,从早期的DCE到现在的CORBA、DCOM、Java RMI等都使用IDL描述接口,所不同的只是语言规范。客户访问服务(或对象方法)均通过接口进行,至于服务采用怎样的内部实现、基于怎样的语言、甚至怎样的操作系统、数据库,开发者都不用关心。类似地,消息队列也可作为分布交互的手段,消息的语法和语义定义保证了使用与实现的分离,使用消息队列的客户或服务是不依赖于对方的。既然中间件能隔离设计与实现,能在分布的环境中封装实现的细节,那么,基于中间件的构件开发也就是可能的。
隔离应用构件与复杂系统资源
构架很重要的一个功能就是将系统资源与应用构件隔离,这是保证构件可重用甚至“即插即用”的基础,与中间件的意图同样是一致的。中间件最大的优势之一就是屏蔽多样的系统资源,保证良好的互操作性。应用构件开发者只需要按照中间件规定的模式进行设计开发,不必考虑下层的系统平台。因此可以说,中间件真正提供了与环境隔离的构件开发模式。
符合标准的交互模型
构架不是什么具体软件,而是抽象的模型,但模型中应当定义一些可操作的成分,如标准的协议。标准的中间件则实现了构架的模型,实现了标准的协议,如基于CORBA的对象中间件使用的是CORBA规范作为构架模型,具体则实现了可互操作的GIOP协议,映射到TCP/IP为IIOP协议,定义了CDR数据表示语法、数据包格式、消息语义等内容。因此,基于中间件的构件是符合标准模型的。
软件重用
软件重用是构件化软件生产的根本目标之一,中间件提供了构件封装、构件交互规则、构件与环境的隔离及构架设施等机制,这些都为软件重用提供了方便的解决方案。
另外,通过类似应用桥的机制,中间件可以建立访问过去应用的通道;或者在新的中间件体系中建立特殊的运行容器,封装以往的应用,从而最终做到对应用遗产的继承性重用。
提供对应用构件的管理
基于中间件的构件软件可以方便地进行管理,因为构件总可以通过方便的标识机制进行划分,还可以使用构件库机制配合一些管理规则。例如,微软的COM就利用Windows系统注册表配合几种惟一标识构件的方式,实现构件的登记、注销、定位。CORBA规范中有接口池、实现池等规范定义,配合应用登记管理的机制,也能对应用构件实施管理。
总之不难得出结论,基于中间件开发的应用是构件化的,中间件提供了构件的体系结构,大大提高了应用构件生产的效率和质量。
分享到:
相关推荐
面向构件中间件平台-EOS,是一种先进的软件架构技术,它为构建、部署和管理分布式企业应用提供了强有力的支持。本文将深入探讨EOS的核心概念、特点、优势以及如何在实际开发中运用这一技术。 首先,让我们理解...
2. 面向构件的方法和面向过程、面向对象的方法的异同 3. 构件模型的概念和重要性 4. 构件规约的层次和类型 5. 构件之间的连接方式 6. 构件的不兼容问题和解决方法 7. 软件构件与中间件的关系和结合方式 详细说明: ...
### 武汉理工大学软件构件与...综上所述,理解和掌握软件构件与中间件的相关概念和技术对于软件工程专业的学生来说至关重要。这些知识点不仅有助于学生掌握当前的软件开发实践,也为他们未来的职业生涯打下坚实的基础。
【软件构件与中间件】是IT领域中涉及...总的来说,软件构件与中间件的课程涵盖了软件工程的多个核心概念,包括软件复用、系统集成、数据库管理和面向对象设计。理解这些知识点对于提升软件开发的效率和质量至关重要。
在IT领域,尤其是在软件开发与系统构建中,“架构”,“构件”,“组件”,“框架”以及“中间件”是常见的术语,它们各自扮演着不同的角色,对于系统的整体设计与功能实现至关重要。下面将深入探讨这些概念的区别与...
本文《面向领域的构件运行支撑平台研究与实现》由黄罡、王千祥、曹东刚、梅宏四位学者撰写,针对软件复用中基于构件的软件开发(CBSD)的关键技术——面向领域的构件运行支撑平台进行了深入研究。文章首先指出,虽然...
面向构件技术的应用提升了软件的标准化和复用性,促进了团队间的协作,显著提高了开发效率,适应快速变化的市场需求。综合电子信息系统通过这种方式实现灵活集成、重组和扩展,确保系统的实时安全性和业务逻辑稳定性...
中间件作为连接操作系统与应用程序的软件层,提供了一套标准化的服务,使得开发人员无需关注底层操作系统的差异,就可以专注于业务逻辑的开发。它在分布式计算环境中扮演着至关重要的角色,通过提供通信、事务管理、...
《综合电子信息系统面向构件的软件开发与集成技术》一文主要探讨了在电子信息与信息技术领域,如何通过面向构件的软件开发方法来优化综合电子信息系统。文章涵盖了从软件结构设计、开发过程管理到模型化抽象等多个...
### 中间件技术在Web系统中的应用 #### 一、引言 随着互联网技术的飞速发展,Web系统已经成为信息交流和服务提供的重要平台。为了更好地适应这种发展趋势,采用中间件技术和Java技术的多层应用体系架构已成为当前...
2. **CORBA IDL**:ID是定义构件接口的关键工具,它允许程序员以面向对象的方式定义服务接口,然后由编译器生成不同编程语言的绑定代码。 3. **构件注册与定位**:在分布式环境中,ORB如何管理构件的注册和查找,...
【综合电子信息系统面向构件的软件开发与集成技术研究】这篇论文深入探讨了在电子信息领域中,如何运用面向构件的开发方法和技术来优化综合电子信息系统的构建。面向构件的开发方式旨在提高软件的重用性、效率和灵活...
面向对象的中间件软件体系结构是现代软件开发中的一个重要主题,它强调利用可复用的软件构件来构建复杂的应用系统,以提高开发效率、降低维护成本和提升软件质量。2022年的研讨内容主要涵盖了基于构件的软件开发、...
软件开发:研究基于构件和SOA技术的农业信息化应用开发平台 本文研究的主要目的是设计和实现基于构件和SOA技术的农业信息化应用开发平台,以支持农村信息化应用软件的快速生成和有效部署。该平台基于Java EE框架下...
构件技术源于面向对象(OO)技术,是更高层次的抽象。它将一组相关的对象打包成功能模块,形成可复用的“插件”。构件技术使得软件开发者能够通过组装已有的构件,快速构建新的软件系统,降低了开发成本,提高了...