IDL接口定义语言

IDL接口定义语言

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

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

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

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

基于IDL的软件系统包括:

Sun公司的ONCRPC,

TheOpenGroup的DistributedComputingEnvironment(分布式计算环境),

IBM的SystemObjectModel(系统对象模型),

OMG组织的CORBA,

Facebook公司的Thrift,

用于WebService的WSDL。

IDLSpecificationLanguage

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

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

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

微软的IDL(MIDL)定义客户端和服务器程序间的接口。MIDL包括用于平台SDK的MIDL编译器,使开发人员能够创建IDL文件和远程过程调用RPC接口和COM/DCOM接口所需的应用程序配置文件ACF。

MIDL能用于所有基于Windows操作系统的C/S应用程序,还能用于异构(heterogeneous)网络环境的C/S应用程序,如Unix和Apple。微软为RPC互操作能力,支持OpenGroup(开放组织)的DCE标准。

要使用带RPC的MIDL,熟悉C/C++编程和RPC范例是必须的。当使用带COM的MIDL,熟悉C++编程和应用于COM的RPC范例是必须的,熟悉OLE自动建模脚本和典型库也是必须的。

相关推荐