购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.4 软件构件技术知识

软件构件:构件是可复用的软件组成成分,可被用来构造其他软件。软件构件是指在两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程。构件对象本身也是一个构件,也有业务逻辑规则需要处理,要起到相关构件的协调作用。

COM/DCOM/COM+

COM是个开放的组件标准,它有很强的扩充和扩展能力。COM把组件的概念融入到Windows运用中。DCOM在COM的基础上添加了许多功能和特性,包括事务特性、安全模型、管理和配置等,使COM成为一个完整的组件架构。COM+将COM、DCOM和MTS形成一个全新的、功能强大的组件架构。

COM+并不是COM的新版本,我们可以把它理解为COM的新发展,或者为COM更高层次上的应用。COM+的底层结构仍然以COM为基础,它几乎包容了COM的所有内容。COM+倡导了一种新的概念,它把COM组件软件提升到应用层而不再是底层的软件结构,它通过操作系统的各种支持,使组件对象模型建立在应用层上,把所有组件的底层细节留给操作系统。

COM+不再局限于COM的组件技术,它更加注重于分布式网络应用的设计和实现,已经成为Microsoft系统平台策略和软件发展策略的一部分。COM+继承了COM几乎全部的优势,同时又避免了COM实现方面的一些不足。COM+紧紧地与操作系统结合起来,通过系统服务为应用程序提供全面的服务。

CORBA

CORBA(Common Object Request Broker Architecture,公共对象请求代理架构)是由OMG组织制定的一种标准的面向对象的应用程序体系规范。或者说CORBA架构是对象管理组织(ObjectManagement Group,OMG)为解决分布式处理环境(Distributed Computing Environment,DCE)中硬件和软件系统的互联而提出的一种解决方案。

OMG组织成立后不久就制定了对象管理架构(ObjectManagement Architecture,OMA)参考模型,该模型描述了OMG规范所遵循的概念化的基础结构。OMA由对象请求代理ORB、对象服务、公共设施。其核心部分是对象请求代理(Object Request Broker,ORB)。ORB提供了一种机制,通过这种机制,对象可以透明地发出请求和接收响应。CORBA标准主要分为三个层次:对象请求代理、公共对象服务和公共设施。最底层是对象请求代理ORB,规定了分布对象的定义(接口)和语言映射,实现对象间的通信和互操作,是分布对象系统中的“软总线”;在ORB之上定义了很多公共服务,可以提供诸如并发服务、名字服务、事务(交易)服务、安全服务等各种各样的服务;最上层的公共设施则定义了组件框架,提供可直接为业务对象使用的服务,规定业务对象有效协作所需的协定规则。

EJB

EJB用于封装业务,而业务可分为业务实体和业务过程。在J2EE模型当中,中间层的业务功能通过EJB构件实现,使用JSP实现业务逻辑处理结果的动态发布,构成动态的HTML页面,中间层也可以使用Servlet实现更为灵活的动态页面。EJB组件存活在EJB容器中。

软件复用,又称软件重用,是指在两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程。软件元素包括程序代码、测试用例、设计文档、设计过程、需求分析文档,甚至领域知识。通常把这种重用的元素简称为构件。可重用的软件元素越大,就说重用的粒度越大。

软件重用技术可以减少软件开发活动中大量的重复性工作,能提高软件生产率、降低开发成本、缩短开发周期。同时,由于软构件大都经过严格的质量认证,并在实际环境中得到检验,因此重用软构件有助于改善软件质量。大量使用构件,软件的灵活性和标准化程度也能得到提高。

软件中间件

中间件是位于硬件、操作系统等平台和应用之间的通用服务,这些服务具有标准的程序接口和协议。不同的硬件及操作系统平台,可以有符合接口和协议规范的多种实现。

中间件是一种独立的系统软件或服务程序,可以帮助分布式应用软件在不同的技术之间共享资源,它位于客户机/服务器的操作系统之上,管理计算机资源和网络通信。其主要目的是实现应用与平台的无关性。满足大量应用的需要、运行于多种硬件和操作系统平台、支持分布计算、提供跨网络/硬件,操作系统平台的应用或服务的透明交互、支持标准的协议、支持标准的接口,这些都是任何一类中间件所具备的特点。

通常将中间件分为数据库访问中间件、远程过程调用中间件、面向消息中间件、事务中间件、分布式对象中间件等几类。

(1)数据库访问中间件通过一个抽象层访问数据库,从而允许使用相同或相似的代码访问不同的数据库资源。典型的技术如Windows平台的ODBC和Java平台的JDBC等。

(2)远程过程调用(Remote Procedure Call,RPC)中间件是一种广泛使用的分布式应用程序处理方法。一个RPC应用分为两个部分:服务器和客户机。服务器提供一个或多个远程过程;客户机向服务器发出远程调用。

(3)面向消息中间件( Message-Oriented Middleware,MOM)利用高效可靠的消息传递机制进行平台无关的数据交流,并可基于数据通信进行分布系统的集成。典型的产品如IBM的MQSeries。

(4)分布式对象中间件。典型的产品如OMG的CORBA、Sun的RIVU/EJB、Microsoft的DCOM等。OMG提出的对象请求代理(Object Request Broker,ORB)模型提供了一个通信框架,可以在异构分布计算环境中透明地传递对象请求。ORB是一种对象总线,定义了异构环境下对象透明地发送请求和接收响应的基本机制,是建立对象之间客户机/服务器关系的中间件。

(5)事务中间件,也称事务处理监控器(Transaction Processing Monitor,TPM),随着分布计算技术的发展,分布应用系统对大规模的事务处理也提出了需求。事务处理监控程序位于客户和服务器之问,完成事务管理与协调、负载平衡、失效恢复等任务,提高系统的整体性能。典型产品如BEA的Tuxedo。随着对象技术与事务技术的结合,近年还出现了一类新产品,即对象事务监控器( ObjectTransaction Monitor,OTM),可以保证分布式对象的事务完整性,支持EJB的J2EE应用服务器就属于该类产品。事务处理监控器在操作系统之上提供了一组服务,可以对客户请求进行管理并为其分配相应的服务进程,使服务器在有限的系统资源下能够高效地为大量客户提供服务。

中间件可分为三个层次:

底层型中间件的主流技术有JVM、JDBC、ODBC、CLR,代表产品有Sun的JVM和微软的CLR;

通用型中间件的主流技术有CORBA、J2EE和COM等,代表产品有IONA Orbix、BEA Weblogic和IBM MQSeries;

集成性中间件的主流技术有Workflow和EAI等,代表产品有BEA的Weblogic和IBM的WebSphere等。 Oeqq8ueWD8MXlJ0fbsK7xaCzityDfq7hGebGMYwywbo/hZkleEK7CIsnWq4V8wmA

点击中间区域
呼出菜单
上一章
目录
下一章
×