API

HackerJobs_API

Photo by Grovemade on Unsplash

Die Abkürzung des Application Programming Interface lautet „API“. Dieser Terminus bezeichnet eine Schnittstelle zweier Programme, zwischen einem Programm sowie dem Betriebssystem oder einer Schnittstelle zwischen zwei Betriebssystemen. Die Aufgabe der Schnittstelle ist es, eine Kommunikation von zwei Programmsystemen auf Quelltextebene herzustellen oder diese zu vereinfachen. Da ein Application Programming Interface zumeist als modulares System aufgebaut ist, müssen nicht automatisch alle Bestandteile der APIverwendet werden.

Funktionen des Application Programming Interface

Abhängig von der jeweiligen Schnittstellenvariation, schöpfen Programmierer aus unterschiedlichen Optionen, um mit anderen Programmen zu kommunizieren. Beispielsweise ist es über mit verschiedenen Betriebssystemen verbundenen APIs möglich, Grafik- oder Soundkarte zu nutzen oder Dienste zu starten. Zudem ermöglicht dieses System einen Zugriff auf systeminterne Bibliotheken, die einer Speicherung von Daten auf der Festplatte dienen. Weiterhin greifen Betriebssysteme auf die Schnittstellen zurück, um eine Kommunikation zu sogenannten BIOS herzustellen oder die Hardwaregeräte samt Treibern zu nutzen, welche ansonsten im System nicht beansprucht werden würden.

Die wichtigsten API-Arten im Überblick

Die Einteilung in verschiedene Kategorien richtet sich nach dem Anwendungsgebiet. Als besonders komplex gilt das funktionsorientierte Application Programming Interface, das einem Programm den unmittelbaren Zugriff auf die entsprechende Hardware gestattet. Diese Form der API verkettet verschiedene Schnittstellen miteinander. Dieser Vorgang funktioniert, indem ein entsprechendes Programm über die APIs der Betriebssysteme einen Request zur Eröffnung eines Handles aussendet. Dieser veranlasst eine Weiterleitung des jeweiligen Wertes ans Programm – direkt über die eigene Schnittstelle. Über einen geöffneten Handle können im Bedarfsfall ebenfalls mehrere Funktionen freigeschaltet werden. Diese Funktionen sind über daran anknüpfende Requests abrufbar. Handles werden erst geschlossen, wenn sich alle damit verbundenen Requests erledigt haben. Durch diese Methode ist gesichert, dass eine Funktionsweise über mehrere Threads ermöglicht wird.

Besonderheiten dateiorientierter Schnittstellen

Eine dateiorientierte API ermöglicht eine Kommunikation mit am Computer integrierten Speichermedien. Diese Application Programming Interface-Form verfolgt den Zweck, über die Requests Dateien anzufragen, zu überschreiben oder auszulesen. Zudem erlaubt dieses System zusätzliche Funktionen wie ein Anlegen der Dateiinformationen für Anwender.

Was ist eine protokollorientierte API?

Ein protokollorientiertes Application Programming Interface bildet die Grundlage für eine Kommunikation zweier Programme, die unabhängig von Betriebssystemen oder Hardware funktionieren. Es werden sogenannte systemkritische Handles oder keine Kernelbefehle aktiviert. Die Kommunikation dieser APIbeschränkt sich auf über die Programme definierte Kanäle wie Bibliotheken oder Protokolle. Als nachteilig erweist sich das Unvermögen dieser Schnittstellen, über mehrere Programmkomponenten abrufbar zu sein. Für eine Erstellung neuer Systeme oder Module müssen sämtliche Requests neu versandt werden. Dennoch hat sich das protokollorientierte Application Programming Interface als System etabliert, um eine Kommunikation zwischen zwei Programmen zu ermöglichen. Der Vorteil dieser API ist die ressourcenschonende und flexible Arbeitsweise.