28.08.2018

API / Application Programming Interface

API / Application Programming Interface – Wort des Tages - EVS Translations
API / Application Programming Interface – Wort des Tages – EVS Translations

Allgemein gesagt ist eine API (Application Programming Interface, zu Deutsch „Anwendungsprogrammierschnittstelle“) eine Menge von Programmieranweisungen, die webbasierten Softwareanwendungen vorgeben, wie diese miteinander interagieren und kommunizieren sollen. Anders formuliert, handelt es sich dabei um Softwarecode, der zu einer Webanwendung gehört und nicht für die direkte Benutzerinteraktion, sondern für die Verarbeitung mit einem Rechner gedacht ist, und der den Zugriff auf die Dienste einer Anwendung ermöglicht, die Entwickler in ihre eigenen Webprodukte einbinden können.

Während APIs in den 1960er Jahren zunächst mit prozeduralen Sprachen verwendet und typischerweise in Form von Bibliotheken bereitgestellt wurden, fand der Begriff selbst zum ersten Mal im Zusammenhang mit Datenbanksystemen in einem Tagungs-Papier mit dem Titel „The Relational and Network Approaches: Comparison of the Application Programming Interfaces“ Erwähnung, das 1974 auf dem ACM SIGFIDET Workshop on Data Description, Access and Control (heute SIGMOD) in Amsterdam (Niederlande) präsentiert wurde, einer Fachtagung zum Thema Datenbeschreibung, ‑zugriff und ‑kontrolle.

In den 80er und 90er Jahren kam gemeinsam mit der Entwicklung organisationsübergreifender Apps mit XML über HTTP das objektorientierte Programmieren (OOP) auf. 1998 wurde das SOAP (Simple Object Access Protocol) als Standard-Netzwerkprotokoll für den Datenaustausch zwischen Webdiensten entwickelt, das für die Komplexität seines Aufbaus und seiner Verwendung bekannt werden sollte. Als Alternative führte Roy Fielding im Jahr 2000 in seiner Dissertation zum Thema Softwarearchitektur den Architekturstil REST (Representative State Transfer) ein, um Regeln für eine gemeinsame Sprache für die Softwarekommunikation aufzustellen.

Die Geburt der Web-APIs ging der Einführung von Fieldings Konzept nur einige Monate voraus: Am 7. Februar 2000 führte Salesforce als erster Provider öffentlich verfügbare XML-APIs ein, um Kunden die Möglichkeit zu geben, Daten zwischen verschiedenen Geschäftsanwendungen auszutauschen und damit das anzubieten, was wir heute unter dem Begriff „Software-as-a-Service“ kennen.

Am 20. November 2000 führte eBay zusammen mit dem ebay Developers Program seine API ein, um, so das Unternehmen, die Tools zur Verfügung zu stellen, die Entwickler brauchen, um Anwendungen auf Grundlage der eBay-Technologie zu entwickeln. Amazon stieg mit der Gründung der Amazon Web Services in die Welt der APIs für den E-Commerce ein und ermöglichte es Entwicklern, die Inhalte und Merkmale von Amazon in ihre eigenen Webprodukte einzubinden.

Das Aufkommen sozialer Plattformen bildete die Grundlage für neue APIs, die auf Social-Sharing-Funktionen und dem Aufbau von Verbindungen beruhten.

Am 29. Juni 2006 führte Google die Google Maps-API ein und startete einen Trend sogenannter API-Mashups, bei denen Daten aus verschiedenen Webanwendungen zu einer neuen Anwendung zusammengefügt werden, also zum Beispiel eine Karte, in der alle nahe gelegenen Restaurants eingezeichnet sind oder in der der Verlauf einer Wanderung aufgezeichnet werden kann.

Die Elastic Compute Cloud-Speicherdienste von Amazon (kurz EC2) und die App Engine von Google ebneten den Weg für Cloud-Computing-Plattformen für Entwickler und virtuelle Server für das Hosting von Webanwendungen.

Ein echter Meilenstein folgte im Juni 2009 mit der Veröffentlichung des iPhone 3G von Apple und dem App Store, in dem die Besitzer Anwendungen herunterladen konnten – der Beginn des Zeitalters der mobilen Apps, für die APIs eine wesentliche Rolle spielen.