Interface description language

Para as lipoproteínas IDL ver Lipoproteína de densidade intermedia.
A Interface description language ou Interface definition language ("Linguaxe de definición de interface" en inglés) é unha linguaxe informática que se utiliza para describir os compoñentes de software dunha interface.

 Utilización 
Existe un compilador específico de IDL para cada linguaxe de programación en particular. 
O compilador traduce polo tanto unha definición (estrutura de datos e/ou API) escrita en IDL a unha linguaxe de programación específica, xerando, en tal linguaxe dous conxuntos distintos de código fonte, chamados:
 stub (cabo): para ser usado pola aplicación cliente.
 skeleton (esqueleto): para ser usado pola aplicación servidor.

Deste xeito pódese escribir unha API en IDL para definir un intercambio de datos entre aplicacións que utilizan diferentes linguaxes de programación, sistemas operativos etc. Achega adicionalmente unha transparencia de máquina (cliente e servidor poden correr en distintas máquinas ou na mesma, sen necesidade de modificar o código da aplicación.

Sistemas de software baseados en IDL inclúen ONC RPC, The Open Group's Distributed Computing Environment e the Object Management Group de CORBA.

Categoría:Linguaxes de interface