理解CORBA:对象请求代理体系结构详解

5星 · 超过95%的资源 需积分: 48 29 下载量 68 浏览量 更新于2024-07-26 1 收藏 3.98MB PDF 举报
"CORBA教程——面向对象的分布式服务框架详解" CORBA,全称为Common Object Request Broker Architecture,即公共对象请求代理体系结构,是由对象管理组织(OMG)制定的一种标准,用于构建分布式应用程序的规范。OMG是一个致力于推动对象技术发展的国际性非营利组织,它的目标是为应用开发提供公共框架,并制定工业指南和对象管理标准。 CORBA的主要目的是解决分布式计算环境(DCE)中的硬件和软件互操作性问题。它提供了一种中立的方式,使得不同操作系统、编程语言和网络环境下的对象能够相互通信,就像它们在同一系统内一样。这种技术的关键在于对象请求代理(ORB),ORB作为中间件,负责处理对象之间的通信细节,使得对象可以透明地调用远程对象的方法。 在CORBA体系中,接口定义语言(IDL)起着至关重要的作用。IDL允许开发者定义跨平台和跨语言的接口,这些接口可以被映射到各种编程语言,如C++或Java。IDL使得开发者可以独立于实现来设计和描述接口,增加了代码的可重用性和互操作性。 第2章深入介绍了IDL,它是CORBA的核心组件之一,提供了灵活的客户/服务器交互方式。通过IDL,开发者可以定义对象接口,这些接口随后会被映射到不同的编程语言,如C或C++。此外,还比较了OMGIDL与Microsoft的IDL,强调了它们之间的相似性和差异。 第3章详细阐述了IDL如何在C和C++中进行映射,包括在C中的基本映射机制以及在C++中的面向对象特性映射。 第4章和第5章分别探讨了ORB如何处理客户端和服务器端的请求。动态激发接口(DII)允许在运行时动态创建和执行请求,而对象适配器(OA)和实现仓库则在服务器端起着关键作用,支持对象的实现和调度。 第6章讲解了CORBA的互操作性,包括不同ORB之间的通信,如通用ORB互操作协议GIOP和特定环境ORB互操作协议ESIOP,以及CORBA的层次结构设计,确保了不同ORB实现之间的兼容性。 第7章介绍了CORBA在电子商务领域的应用,强调了分布式软件在电子支付、安全管理等方面的重要性。 第8章详细列出了CORBA的基本服务,包括对象生存期、对象关系、持续性、外化、命名、洽谈、事件、事务、并行、属性、查询、包容、安全和时间服务,这些服务构成了CORBA功能丰富的服务层。 第9章以C++Builder为例,简要介绍了如何使用VisiBroker这一CORBA产品进行开发,包括编译IDL文件以生成存根和骨架,以及如何利用SmartAG等工具进行CORBA应用程序的构建。 CORBA教程涵盖了从基础概念到实际开发的多个方面,是学习和理解分布式对象系统及其在现代软件工程中应用的重要参考资料。