Interface description language

from Wikipedia, the free encyclopedia

An interface description language or interface definition language is a declarative formal language and includes a language syntax for describing interfaces of software - component .

With their help, objects and the methods that can be applied to them, including the possible parameters and data types , can be described without using the properties of a specific programming language. The interface description language is used purely to describe the interface, but not to formulate algorithms.

Based on the interface description language, a special compiler can convert the definitions into a specific programming language and computer architecture, the so-called language binding .

An interface description language is mostly found in distributed systems in which a client can execute methods on another computer ( remote procedure call ), for example COM (MIDL), gRPC , CORBA or Java RMI .


The Android Interface Definition Language is a Java- like language for the definition of RPC interfaces (for interprocess communication, IPC ). AIDL programs are stored in the Android development system (e.g. Android Studio ) as .aidl files, from which the Android SDK tools automatically generate Java files (similar to XML resource files). This can be used to make remote procedure calls.


The Interface Definition Language ( IDL ) from OMG is an interface description language with C ++ -like syntax that was developed for CORBA .

With CORBA, the definitions can also be loaded into the interface repository at runtime without a special compiler and can be queried dynamically by the software ( Dynamic Invocation Interface or Dynamic Skeleton Interface ).

See also

Web links