Język opisu interfejsu,język definiowania interfejsu,IDL (odang. interface definition language lubinterface description language –język specyfikacyjny stosowany do opisuinterfejsu, używany na przykład w standardzieCORBA. IDL opisuje interfejs w sposób niezależny od języka, umożliwiając komunikację międzykomponentami programu na poziomiekodu źródłowego, które nie współdzielą danegojęzyka programowania, przykładowo między składnikami napisanymi wC++ i składnikami napisanymi w językuJava.
IDL jest używany głównie w programowaniuzdalnego wywoływania procedur, tak aby współdziałającesystemy komputerowe mogły używać zarówno różnychsystemów operacyjnych, jak i różnych języków programowania. W takim ujęciu IDL zapewnia pomost między dwoma różnymi systemami (ściślej: pomost między dwoma systemami używającymi różnych interfejsów).
IDL umożliwia opisowe definiowanie interfejsu w postaci obiektu z wykazem procedur i opisamiparametrów wejściowych i wyjściowych. Każdy parametr jest określony przez typ i kierunek (in,out,inout), określający sposób przekazywania parametru, na przykładin to przekazanie parametru przez klienta do obiektu. Opisy interfejsów tłumaczone są na różne języki programowania, zależnie od intencjiprogramisty zamierzającego z nich skorzystać. Przykładowo: jeżeli programista opanował język Java, to wykonuje tłumaczenie interfejsu do języka Java i w nim wykorzystuje właściwości oferowane przez obiekt opisany w IDL.
Przykład IDL wzorowanego naC:
interfaceHello{stringprosta_metoda(instringargument);}