API – Application Programming Interface

Was ist eine API und welche Arten gibt es?

Eine Programmierschnittstelle für andere Anwendungen

API ist ein Akronym und steht für Application Programming Interface und bezeichnet somit eine Schnittstelle zur Anwendungsprogrammierung. Grundsätzlich bietet eine API als Teil eines Systems oder einer Software anderen Systemen oder Programmen die Möglichkeit, sich anzubinden, um so bspw. auf systeminterne Bibliotheken oder auf gespeicherte Daten und Dateien zuzugreifen.

API Arten

Es gibt vier verschiedene Arten einer API:

  • Die funktionsorientierte API ermöglicht einem Programm einen direkten Zugriff auf die Hardware eines Systems, bspw. zur Aktivierung eines Hardwaregerätetreibers. Das Programm sendet über die API des Betriebssystems einen Request zum Öffnen eines Handles, das über seine eigene Schnittstelle den angefragten Wert an das Programm weitergibt. Das Handle kann dabei auch mehrere Funktionen freischalten, die dann über andere, daran anknüpfende Requests abgerufen werden können.
  • Die dateiorientierte API ermöglicht die Kommunikation mit den Speichermedien des Computers, so dass per Request Dateien und Ordnerstrukturen angefragt, ausgelesen oder überschrieben werden können. Für die Verteilung und Einhaltung der Zugriffsrechte ist das Betriebssystem zuständig.
  • Die protokollorientierte API funktioniert unabhängig von Hardware und Betriebssystem, die Kommunikation findet über Protokolle und Bibliotheken statt. Sie gilt als flexibel, obwohl Requests über mehrere Programmkomponenten nicht möglich sind. Oft ist bereits die Implementierung von ein bis zwei Bibliotheken ausreichend, um den vollen Umfang der Kommunikation zu gewährleisten.
  • Die objektorientierte API wird genutzt, um die Funktionalität verschiedener Klassen miteinander zu kombinieren. Eine solche Schnittstelle ist an mehrere, vorab definierte Restriktionen gebunden, die über die Syntax ausgehandelt werden.

API Dokumentation

Ähnlich wie eine Software kann auch eine Schnittstelle weiterentwickelt werden. Lassen sich bei einer neuen Softwareversion frühere Schnittstellen nicht mehr nutzen, spricht man von einer „Evolving API“. Ändert sich die Schnittstelle trotz neuer Softwareversion nicht, wird sie als „Stable API“ bezeichnet. Wichtig ist, dass eine API dokumentiert ist, so dass die Anbindung der verschiedenen Systeme und Programme überhaupt funktionieren kann.

In Zeiten von Online-Plattformen und Eco-Systemen wird die Dokumentation von Application Programming Interfaces immer wichtiger. Eine dokumentierte API bietet die Möglichkeit, Dienste und Funktionalitäten zu bestehenden Produkten hinzufügen. Für Entwickler ist es wichtig, die Schnittstelle zu verstehen; eine Dokumentation mit Details zu Funktionen, Klassen, Rückgabetypen etc., evtl. angereichert mit Tutorials und Beispielen, hilft bei der Programmierung von Erweiterungen.

Folgende Vorteile bietet eine „gute“ API Dokumentation:

  • Steigerung der digitalen Reichweite
    Im Kontext von Online-Plattformen und Eco-Systemen wird von der digitalen Reichweite einer API gesprochen, die durch die Bereitstellung eine Basis für neue Dienste und Services bietet. Je größer die Reichweite, desto mehr Benutzer verwenden die API. Alternativ wird auch von dem Netzwerkeffekt gesprochen.
  • Höhere Akzeptanz
    Bei einer API gilt das gleiche wie bei einem Produkt: je besser sie funktioniert, desto mehr Menschen sehen einen Wert in der Nutzung. Die Akzeptanz steigt. Können Entwickler das ursprüngliche Produkt mit sinnvollen Funktionen erweitern, steigt sowohl die Akzeptanz bei den Entwicklern als auch bei den Anwendern.
  • Sinkende Aufwände und Kosten im Support
    Eine gute API Dokumentation steigert nicht nur den Bekanntheitsgrad, die digitale Reichweite und die Akzeptanz, sondern verringert auch den Zeitaufwand für die Einarbeitung von internen oder externen Entwicklern. So lassen sich Aufwände und Kosten im Support reduzieren.
  • Einfachere Softwarepflege
    Darüber hinaus trägt die API Dokumentation zur Produktpflege bei. Sie hilft Entwicklern, Strukturen, Ressourcen, Methoden etc. zu kennen, so dass Aktualisierungen idealerweise schneller und besser vorgenommen werden können.

 

API - die Schnittstelle zur Programmierung von Anwendungen

Dienstleister gesucht?

Softwareentwicklung aus Berlin

Ein Impuls zum Diskutieren:

Die Bedeutung von APIs wird unterschätzt. Nicht die Plattformen, sondern offene Schnittstellen sind der Grund für den Erfolg.

Hinweise:

Die gesammelte Erfahrung eines Entwicklers beim Entdecken und Erlernen der Möglichkeiten, und der Integration neuer Funktionen wird übrigens als Developer Experience (DX) bezeichnet.

Als Äquivalent zur API gilt das User Interface, mit dem Anwender auf die Funktionen und Daten eines Systems zugreifen. Es ist ein wichtiger Aspekt für eine positive User Experience.

Hier finden Sie ergänzende Informationen aus unserer Rubrik Wissen kompakt:

Wissen kompakt: Was ist User Experience?

Was ist User Experience?

Wissen kompakt: Welche Tipps gibt es für Pair Programming?

Welche Tipps gibt es für Pair Programming?