article

Eine Programmierschnittstelle ist eine Schnittstelle, die von einem Softwaresystem anderen Programmen zur Anbindung an das System zur Verfügung gestellt wird. Oft wird dafür die Abkürzung API (für engl. application programming interface, deutsch: Schnittstelle zur Anwendungsprogrammierung) verwendet. Im Gegensatz zu einer Binärschnittstelle (ABI) definiert eine API nur die Verwendung der Schnittstellen auf Quelltextebene.

Neben dem Zugriff auf Datenbanken, die Hardware wie Festplatte oder Grafikkarte kann eine API auch das Erstellen von Komponenten der grafischen Benutzeroberfläche ermöglichen oder vereinfachen.

Heutzutage stellen auch viele Internetdienste APIs zur Verfügung (für Beispiele siehe die Weblinks).

Einteilung


Programmierschnittstellen lassen sich in folgende Klassen einteilen:

Funktionsorientierte Programmierschnittstellen kennen nur Funktionen mit oder ohne Rückgabewert als Mittel der Kommunikation. Dabei wird fast immer das Konzept der Handles verwendet. Man ruft eine Funktion auf und bekommt ein Handle zurück. Mit diesem Handle lassen sich weitere Funktionen aufrufen, bis abschließend das Handle wieder geschlossen werden muss. Das BIOS eines Personal Computer ist die älteste Programmierschnittstelle für diesen Rechnertyp.

Interfaceorientierte Programmierschnittstellen verwenden Schnittstellenzeiger und sind damit deutlich flexibler als die funktionsorientierten Programmierschnittstellen. Häufig wird eine Typbibliothek mitgegeben.

"Dateiorientierte Programmierschnittstellen" werden über die normalen Dateisystemaufrufe open, read, write und close angesprochen. Sollen Daten an ein Objekt gesendet werden, werden diese mit write geschrieben, sollen welche empfangen werden, werden sie mit read gelesen. Unter UNIX ist dieses Prinzip bei der Ansteuerung von Gerätetreibern weit verbreitet.

Protokollorientierte Programmierschnittstellen sind unabhängig vom Betriebssystem und der Computerhardware. Allerdings muss das Protokoll stets neu implementiert werden. Um diesen Aufwand zu minimieren, wird die protokollorientierte Schnittstelle durch eine funktions- oder interfaceorientierte Schnittstelle gekapselt. Man kann hier weiterhin zwischen allgemeinen (z. B. SOAP) und anwendungsspezifischen (z. B. SMTP) Protokollen unterscheiden.

Literatur


  • Carsten Harnisch, Richard Jungkunz: 213 Hacks für Google, Amazon und eBay. Die neuen APIs nutzen mit .NET, PHP, Flash, JavaScript, AppleScript, XML. Galileo Press, Bonn 2004, ISBN 3-89842-477-4
  • Sascha Hameister, Aron Homberg: Google APIs – Einführung, Anwendung, Referenz entwickler.press, Frankfurt am Main 2006, ISBN 3-935042-94-9

Weblinks


Beispiele

Webservice APIs

Programmierschnittstelle

API | API | API | API | Application programming interface | Application Programming Interface | API | Ohjelmointirajapinta | Interface de programmation | API | Application Programming Interface | Alkalmazásprogramozási felület | API | Application programming interface | Application Programming Interface | API | Aplikacijų programavimo sąsaja | Application Programming Interface | API | API (informatyka) | API | Интерфейс программирования приложений | Application Programming Interface | API | API | Giao diện lập trình ứng dụng | 应用程序编程接口

 

This article is licensed under the GNU Free Documentation License. It uses material from the "Programmierschnittstelle".

Home Pageartsbusinesscomputersgameshealthhospitalshomekids & teensnewsphysiciansrecreationreferenceregionalscienceshoppingsocietysportsworld