API-Design. Kai Spichale
Чтение книги онлайн.
Читать онлайн книгу API-Design - Kai Spichale страница 8
13.4Cache-Strategien für Schreibzugriffe
13.5Cache-Topologien für Webanwendungen
14.5Skalierung von Datenbanken
14.6Skalierung von Messaging-Systemen
15Erweiterte Architekturthemen
15.3Vernachlässigte Frontend-Architektur
16.2Funktionen einer API-Management-Plattform
16.3API-Management-Architektur
1Application Programming Interfaces – eine Einführung
APIs sind keine Erfindung der letzten Jahre, denn ihre zugrunde liegenden Prinzipien wurden bereits Mitte des 20. Jahrhunderts erkannt und seitdem in vielfältigen Ausprägungen angewandt. Ab der Jahrtausendwende entstanden zunehmend Web-APIs und eine ganze API-Industrie für E-Commerce, soziale Medien, Cloud und Mobile entwickelte sich. In diesem Kapitel werden wir uns zunächst mit der Entwicklung der ersten APIs beschäftigen, eine Definition finden und die Vorteile von APIs erläutern.
1.1Eine kurze Geschichte der APIs
Das Konzept einer Subroutinen-Bibliothek wird erstmalig 1948 von Herman Goldstine und John von Neumann beschrieben [Goldstine & von Neumann 1948]. Demnach ist die Idee, dass die meisten Programme allgemeine Operationen wiederverwenden, um den Umfang von neuem Code und Fehlern zu reduzieren, nach Informatikermaßstäben schon sehr alt. Für die Idee der Subroutinen-Bibliotheken wurde Maurice Vincent Wilkes 1967 sogar mit dem Turing Award ausgezeichnet.
Wilkes und sein Team bauten den EDSAC-Röhrencomputer, der erstmals die Von-Neumann-Architektur implementierte und gespeicherte Programme ausführte. Wilkes damaliger Ph.D.-Student David Wheeler entwickelte für EDSAC ein detailliertes Schema zum Einsatz von Subroutinen. Während Goldstine und von Neumann vorsahen, das gesamte Programm in den Speicher zu laden und die Adressen vor Ausführung mit einer speziellen Routine zu ändern, entwickelte Wheeler eine Reihe von Initiierungsbefehlen, die zuerst ausgeführt wurden, um ein Programm von Lochkarten einzulesen und ohne weitere manuelle Eingriffe auszuführen. Die Initiierungsbefehle von Wheeler waren eine Art Boot Loader für die Programme auf den Lochkarten. Die Programme wurden in Assembler geschrieben, sodass die Benutzer des Computers nie mit dem Binärcode des Computers zu tun hatten.
Der technische Bericht »The preparation of programs for an electronic digital computer«, den das Team 1951 veröffentlichte, war ein Standardwerk der Programmierung, bis Jahre später die ersten höheren Programmiersprachen folgten. Wheeler veröffentlichte 1952 auf nur zwei Seiten folgende grundlegende Konzepte [Wheeler 1952]:
Subroutinen
Subroutinen-Bibliotheken
Bedeutung von Dokumentation für Subroutinen-Bibliotheken
Geheimnisprinzip
Trade-off