Lenguaje de descripción de la interfaz
Un lenguaje de descripción de interfaz o lenguaje de definición de interfaz (IDL), es un término genérico para un lenguaje que permite que un programa u objeto escrito en un idioma se comunique con otro programa escrito en un idioma desconocido. Los IDL describen una interfaz de forma independiente del idioma, lo que permite la comunicación entre componentes de software que no comparten un idioma, por ejemplo, entre los escritos en C++ y los escritos en Java.
Los IDL se usan comúnmente en el software de llamadas a procedimientos remotos. En estos casos, las máquinas en cualquiera de los extremos del enlace pueden estar utilizando diferentes sistemas operativos y lenguajes informáticos. Las IDL ofrecen un puente entre los dos sistemas diferentes.
Los sistemas de software basados en IDL incluyen ONC RPC de Sun, Distributed Computing Environment de The Open Group, System Object Model de IBM, CORBA de Object Management Group (que implementa OMG IDL, un IDL basado en DCE/RPC) y el servicio de distribución de datos, XPCOM de Mozilla, Microsoft RPC de Microsoft (que evolucionó a COM y DCOM), Thrift de Facebook y WSDL para Web servicios.
Ejemplos
- AIDL: Java-based, para Android; admite llamadas de procedimiento locales y remotas, se puede acceder desde aplicaciones nativas llamando a través de Java Native Interface (JNI)
- Apache Thrift: de Apache, desarrollado originalmente por Facebook
- Avro IDL: para el sistema Apache Avro
- Lenguaje de definición de datos conciso (CDDL, RFC 8610): Una notación para estructuras de datos CBOR y JSON
- CortoScript: Describir datos e interfaces para sistemas que requieren interoperabilidad semántica
- Etch: Cisco's Etch Cross-platform Descripción del servicio Idioma
- Notación de datos extensible (EDN): Formato de datos de Clojure, similar a JSON
- FlatBuffers: formato de serialización de Google que soporta deserialización de copias cero
- Franca IDL: el lenguaje de definición de interfaz de código abierto Franca
- FIDL: Lenguaje de descripción de la interfaz para el sistema operativo Fuchsia diseñado para escribir componentes de aplicaciones en C, C++, Dart, go and Rust.
- IDL idioma de especificación: la interfaz original Descripción Idioma
- IPL: Lenguaje del Protocolo de Imandra
- JSON Web-Service Protocol (JSON-WSP)
- Lenguaje de interfaz de dispositivo de imagen ligera
- Microsoft Interface Definition Language (MIDL): la extensión de Microsoft de OMG IDL para añadir soporte para el modelo de objetos componentes (COM) y el modelo de objetos componentes distribuidos (DCOM)
- OMG IDL: estandarizado por Object Management Group, utilizado en CORBA (para servicios DCE/RPC) y DDS (para el modelado de datos), también seleccionado por el W3C para exponer el DOM de documentos XML, HTML y CSS
- OpenAPI Especificación: un estándar para interfaces REST, utilizado por Swagger y otras tecnologías.
- Definiciones de interfaz de servicio abierto
- Buffers de protocolo: IDL de Google
- Descripción del servicio RESTful Language (RSDL)
- Smithy: Un lenguaje de definición de interfaces agnósticas de protocolo incorporado a AWS.
- Lenguaje de especificación para el motor de comunicaciones de Internet (Ice: Slice)
- Objetos de red universales: modelo de componentes de OpenOffice.org
- Web Application Description Language (WADL)
- IDL Web: se puede utilizar para describir interfaces que se pretende implementar en navegadores web
- Web Services Descripción Idioma (WSDL)
- XCB: X lenguaje de descripción del protocolo para X Window System
- Cross Platform Interface Descripción Idioma (XPIDL): Mozilla's way to specify XPCOM interfaces
Contenido relacionado
Directorio Activo
Alfons
Red inalámbrica