Was ist eine Anwendungsprogrammschnittstelle?
Als Anwendungsprogrammierschnittstelle oder einfache API bezeichnet man häufig eine Sammlung von Programmieranweisungen und -standards, mit denen Computerprogramme direkt miteinander kommunizieren können. Viele Software-Unternehmen veröffentlichen ihre APIs für die Öffentlichkeit und ermöglichen Entwicklern die Erstellung von Anwendungen, die von ihren Diensten unterstützt werden. Ein perfektes Beispiel wäre Microsoft DirectX, eine Reihe von APIs, mit denen Entwickler Spiele, Multimedia-Funktionen und Anwendungen für das Windows-Betriebssystem erstellen können.
Eine Anwendungsprogrammschnittstelle ist keine Benutzerschnittstelle, sondern eine Software-zu-Software-Schnittstelle. Tatsächlich können Programme ohne Benutzerkenntnisse oder Eingriffe miteinander kommunizieren. Wenn Sie beispielsweise Konzertkarten online mit einer Kreditkarte kaufen, verwendet die Website eine API, um Ihre Kartendaten an eine Remoteanwendung zu senden, die ihre Gültigkeit überprüft. Sobald die Zahlung bestätigt wurde, antwortet die Anwendung auf der Website und gibt ihr die Erlaubnis, die Tickets auszustellen.
Anwendungsprogrammschnittstellen, die für die schnellste Ausführung ausgelegt sind, enthalten normalerweise eine Reihe von Prozeduren, Funktionen, Variablen und Datenstrukturen. Eine vollständige API wird häufig als eine API definiert, die eine Abstraktionsschicht bereitstellt, die verhindert, dass der Entwickler wissen muss, wie seine Funktion mit den niedrigeren Abstraktionsstufen zusammenhängt. Auf diese Weise kann der Programmierer die Funktionen innerhalb der API verbessern oder neu gestalten, ohne den Code zu beschädigen, der sie benötigt.
Eine Anwendungsprogrammschnittstelle ähnelt Software-as-a-Service (SaaS). Dies liegt hauptsächlich daran, dass Programmierer nicht jedes Mal von vorne beginnen müssen, wenn sie eine Anwendung schreiben. Anstatt ein Kernprogramm zu schreiben, das für alles ausgelegt ist, kann dasselbe Programm bestimmte Aufgaben an andere Anwendungen auslagern, die die Aufgabe viel besser erledigen können. Dies macht die API sehr nützlich für die Integration in eine Website und verschiedene Webanwendungen.
Die Benutzeroberfläche des Anwendungsprogramms ist ein wesentlicher Bestandteil von Web 2.0 und dem Phänomen der sozialen Netzwerke geworden. Mehrere beliebte Communitys nutzen es, um Inhalte in einer offenen Architektur freizugeben. Benutzer können Kommentare, Fotos, Videos und alle Arten von Informationen mit externen Anwendungen teilen und dabei eine offene API verwenden, um ihrer Community neue Funktionen bereitzustellen. Zwei klassische Beispiele für APIs, die diese Freigabe ermöglichen, sind die Facebook-Anwendungsplattform und die Open Social-Plattform.
Anwendungsprogrammschnittstellen werden von mehreren großen Namen bereitgestellt, darunter Amazon®, eBay® und Google ™. Wenn sie präzise entwickelt und richtig eingesetzt werden, können sie sowohl dem Unternehmen, das die Dienstleistung erbringt, als auch den Nutzern zugute kommen. Der vielleicht größte Nachteil von APIs ist, dass sie vom bereitstellenden Service abhängig sind. Wenn beispielsweise Google Maps ™ eingestellt würde, wäre die Benutzeroberfläche des Anwendungsprogramms im Wesentlichen unbrauchbar.