CORBA ( Common Object Request Broker Architecture, 公共对象请求代理体系结构 / 通用对象请求代理体系结构)是由 OMG 组织制订的一种标准的面向对象应用程序体系规范。或者说 CORBA 体系结构是对象管理组织( OMG )为解决分布式处理环境 (DCE) 中,硬件和软件系统的互连而提出的一种解决方案。
CORBA 定义了一系列 API ,通信协议,和对象/服务信息模型用于使得异质应用程序能够互相操作,这些应用程序用不同的编程语言编写,运行在不同的平台上。 CORBA 因此为定义明确的对象提供了平台和位置的透明性,这些对象是分布式计算平台的基础。
通常来说, CORBA 把用其他语言开发的程序代码和关于该程序代码能力和如何调用该程序代码的信息包到一个开发包( package )中,开发包中的对象则可以在网络上被其他程序(或 CORBA 对象)调用。 在这个意义上来讲, CORBA 可以被看作是一个机器可读的文件档格式,类似于头文件( header ),但是具有相当多的信息。
CORBA 使用一种接口定义语言用于刻画对象将体现出来的接口。 CORBA 又规定了从 IDL 到特定编程语言,如 C++ 或 Java ,实现的映射。这个映射精确的描述了 CORBA 数据类型是如何被客户端和服务器端实现的。标准映射的有 Ada 、 C 、 C++ 、 Smalltalk 、 Java 、以及 Python 。 还有一些非标准的映射,为 Perl 和 Tcl 的映射由这些语言写的 ORB 实现。