Application Programming Interface

Was es ist

APIs regeln die Kommunikation zwischen Softwareanwendungen. Im weiteren Sinne kann man das mit einem Gespräch zwischen zwei Personen vergleichen. In diesem Beispiel wäre eine API die konkrete Sprache, die gesprochen wird. Im Gegensatz zu einem Gespräch zwischen zwei Personen ist die Kommunikation zwischen Softwareanwendungen allerdings eingeschränkt. Sie unterliegt einem gewissen Standard, bei dem die Sprache und die Kanäle der Kommunikation festgelegt sind.

Welches Problem es löst

Softwareanwendungen können mit der Zeit sehr komplex werden und kleine Änderungen an einer Stelle der Anwendung können fundamentale Auswirkungen auf andere Bereiche der Anwendung haben. Um die wachsende Komplexität zu beherrschen werden verschiedene Bereiche voneinander durch Modularisierung entkoppelt oder abstrahiert. Der Grad der Modularisierung kann dabei von internen Bereichen innerhalb einer Anwendung, bis hin zu einer eigenständigen Anwendung reichen (siehe verteilten Anwendung). In beiden Fällen jedoch wird eine Standardisierung benötigt, die beschreibt wie, die einzelnen Anwendungen oder Anwendungsbereiche miteinander kommunizieren können.

Wie es das Problem löst

Eine API beschreibt, wie zwei oder mehrere Anwendungen miteinander kommunizieren können. Dabei werden die Kanäle beschrieben sowie die Sprache der Kommunikation (Ein und Ausgabe von Daten). APIs sind die Bausteine moderner Applikationen. Sie fördern die Wiederverwendbarkeit und Wartbarkeit einer Anwendung. Microservices beispielsweise kommunizieren oftmals über APIs miteinander.