Eine Schnittstellenbeschreibungssprache oder Schnittstellendefinitionssprache ist eine deklarative formale Sprache und beinhaltet eine Sprachsyntax zur Beschreibung von Schnittstellen einer Software-Komponente.

Mit ihrer Hilfe lassen sich Objekte und die auf sie anwendbaren Methoden mitsamt den möglichen Parametern und Datentypen beschreiben, ohne dabei die Eigenschaften einer bestimmten Programmiersprache zu verwenden. Die Schnittstellenbeschreibungssprache dient rein der Beschreibung der Schnittstelle, nicht jedoch der Formulierung von Algorithmen.

Ausgehend von der Schnittstellenbeschreibungssprache kann ein spezieller Compiler die Definitionen in eine bestimmte Programmiersprache und Rechnerarchitektur umsetzen, das so genannte Language Binding.

Eine Schnittstellenbeschreibungssprache findet sich meist in verteilten Systemen, bei denen ein Client auf einem anderen Rechner Methoden ausführen kann (Remote Procedure Call), beispielsweise COM (MIDL), gRPC, CORBA oder Java RMI.

AIDL

Bearbeiten

Die Android Interface Definition Language ist eine Java-ähnliche Sprache für die Definition von RPC-Schnittstellen (für Interprozesskommunikation, IPC). AIDL-Programme werden im Android-Entwicklungssystem (z. B. Android Studio) als .aidl-Dateien gespeichert, aus denen die Android SDK tools automatisch Java-Dateien generieren (ähnlich wie auch aus XML-Ressourcendateien). Über diese können entfernte Prozeduraufrufe durchgeführt werden.

CORBA IDL

Bearbeiten

Die Interface Definition Language (IDL) der OMG ist eine Schnittstellenbeschreibungssprache mit C++-ähnlicher Syntax, die für CORBA entwickelt wurde.

Bei CORBA lassen sich die Definitionen auch ohne speziellen Compiler zur Laufzeit in das Interface Repository laden und können dynamisch von der Software abgefragt werden (Dynamic Invocation Interface bzw. Dynamic Skeleton Interface).

Siehe auch

Bearbeiten
Bearbeiten

📚 Artikel Terkait di Wikipedia

JavaScript

Changes to JavaScript, Part 1: EcmaScript 5 ECMAScript 2015 Language Specification. Abgerufen am 2. Januar 2017 (englisch).  ECMAScript 2016 Language Specification

Java (Programmiersprache)

und Klassen, die durch entsprechende Schlüsselwörter interface und class ausgedrückt wird. Java unterstützt kein Erben von mehreren unabhängigen Basisklassen

Annotation (Java)

ihr Name konventionsgemäß value: @interface Test { boolean value(); // true solange nicht freigegeben } oder @interface Autoren { String[] value(); // Namen

SQL

Manipulation Language (DML) – Befehle zur Datenmanipulation (Ändern, Einfügen, Löschen von Datensätzen) und lesendem Zugriff Data Definition Language (DDL) –

QML

Einbindung von JavaScript vereint sie deklarative und imperative Ansätze in einer Programmiersprache. QML ist Bestandteil des Qt User Interface Creation Kit

Java-Syntax

Programmiersprache Java ist in der Java Language Specification definiert, ebenso wie die Semantik von Java. Dieser Artikel gibt einen Überblick über die Java-Syntax

Unified Modeling Language

Die Unified Modeling Language (vereinheitlichte Modellierungssprache), kurz UML, ist eine grafische Modellierungssprache zur Spezifikation, Konstruktion

R (Programmiersprache)

Draft of a Paper for Interface ’98. In: Sanford Weisberg (Hrsg.): Proceedings of the 30th Symposium on the Interface. The Interface Foundation of North