IDL接口定义语言

IDL接口定义语言

也叫“接口描述语言”(Interface Description Language),是一个描述软件组件接口的语言规范。

IDL用中立语言的方式进行描述,能使软件组件(不同语言编写的)间相互通信。

IDL通常用于RPC(Remote Procedure Call,远程过程调用)软件。

IDL提供了一个“桥”来连接不同的系统。

基于IDL的软件系统包括:
Sun公司的ONC RPC,
The Open Group的Distributed Computing Environment(分布式计算环境),
IBM的System Object Model(系统对象模型),
OMG组织的CORBA,
Facebook公司的Thrift,
用于Web Service的WSDL。

IDL Specification Language
类似于其它的接口描述语言,IDL以独立于语言和硬件的方式来定义接口,允许组件间的接口规范采用不同语言编写,通过RPC可以执行在不同的机器上。

Java IDL把CORBA的能力移植到Java平台,提供了基于标准的互操作能力和连通性。Java IDL使分布式带Web功能的Java应用程序能够透明地调用使用业界标准的OMG IDL的远程网络服务。

Java IDL技术是基于接口的,定义在CORBA IDL之上,为想使用Java编程语言的CORBA程序员进行编程的。这就是“Business as usual”(照常营业,一切正常)的CORBA编程,支持Java技术,同样也支持C++或COBOL。

微软的IDL(MIDL)定义客户端和服务器程序间的接口。MIDL包括用于平台SDK的MIDL编译器,使开发人员能够创建IDL文件和远程过程调用RPC接口和COM/DCOM接口所需的应用程序配置文件ACF。
MIDL能用于所有基于Windows操作系统的C/S应用程序,还能用于异构(heterogeneous)网络环境的C/S应用程序,如Unix和Apple。微软为RPC互操作能力,支持Open Group(开放组织)的DCE标准。
要使用带RPC的MIDL,熟悉C/C++编程和RPC范例是必须的。当使用带COM的MIDL,熟悉C++编程和应用于COM的RPC范例是必须的,熟悉OLE自动建模脚本和典型库也是必须的。
上一篇:MongoDB概念解析


下一篇:MongoDB复制集同步原理解析