API – Schnittstelle

Das API ist eine Schnittstelle für Programmierinnen (engl. Application Programming Interface). Wer einen Anwendung programmiert, muss sicher gehen, dass exakt dieselben Daten auf dem Bildschirm erscheinen, wie man sich das während des Programmierens gewünscht hat. Wer als Hersteller von Hardware eine saubere und vernünftige Schnittstelle anbietet, der bietet Programmierinnen bessere Chancen, eine Anwendung zu programmieren, die mit der Hardware kompatibel ist. Die sogenannte „Dokumentation“ der Schnittstelle legt offen, welche Funktionen in die Anwendung übernommen werden können, d.h. man programmiert nicht unnötigerweise Funktionen, die die entsprechende Anwendung nicht unterstützt.

Auf  den meisten Webseiten von Unternehmen sieht man unter dem Dateireiter „Anfahrt“ eine Wegbeschreibung, die durch einen Straßenausschnitt von GoogleMaps verdeutlicht ist. Innerhalb seines eigenen Programms kann jeder auf den Kartenlesedienst verweisen, weil Google Maps seine Schnittstelle veröffentlicht und gut dokumentiert hat. So kann jede Webentwicklerin diese Schnittstelle – hier heißt sie Web API – in den Programmcode einbauen.

Auch das Filmchenportal Youtube besitzt eine quelloffene Schnittstelle, sodass viele unterschiedliche Webseiten eigene Videos im Youtube-Format mit dem roten Play-Button integriert haben.  Der immense Erfolg der Verbreitung der Produkte von Google und Tochterunternehmen Youtube lässt sich also auf ihren gut dokumentierten Schnittstellen zurückführen. Apple hingegen hält seine Schnittstellen geheim, Entwicklerinnen müssen erst eine Linzenz beantragen.

 

 

Schnittstelle

Eine Schnittstelle, das ist der Moment, in der die scharfe Klinge der Schere ein Blatt Papier in zwei Hälften zerteilt. Möchte man das die zwei Teile exakt wieder zusammenfügen, braucht man viel Klebstoff und akribische Genauigkeit.  Genau das ist das Wesen von Schnittstellen in der Informatik. In einem computerinternen System sind viele verschiedene Elemente vorhanden, die nur miteinander über ihre Schnittstelle miteinander kommunizieren. Genauso wie es rote, gelbe und grüne Farben von Papier gibt, oder Bätter aus Pappe oder Seide, so ist jede Schnittstelle im Computer unterschiedlich gestaltet. Die Aufgabe von Schnittstellen ist es, Informationen möglichst reibungslos zu übertragen.

Schnittstelle 3.png
Schnittstellen

IDE oder ATA?

Wer sich länger mit Computern beschäftigt, merkt, dass diese die witzigsten Abkürzungen für viele Hardware-Komponenten besitzen. IDE und ATA sind Synonyme für bestimmte Kabelsorten. Diese Kabel sehen anders aus als gewöhnliche Stromkabel, sie ähneln den weingummiartigen Schnüren aus der bunten Kiosk-Tüte.

ATA-Kabel
IDE- bzw. ATA-, Kabel

Diese Kabel übertragen vorallendingen eine Sache: Daten. Je schneller ein Rechner sein soll, umso mehr Daten muss er übertragen. Deswegen bestehen diese IDE/ATA-Kabel aus circa 40 nebeinander verklebten Kabeln. Die Kabel sind für den Transfer der Daten von den  Massenspeichern zu den restlichen Geräten auf dem Motherboard verantwortlich.

Ein Massenspeicher ist ein Gerät mit einem riesigen Speichervolumen, beispielsweise eine Festplatte oder die CD-ROM in einem Laufwerk. ATA-Kabel bilden also die Schnittstelle zwischen der Festplatte und den restlichen Computerelementen.

Für jeden Standrechner gibt es zwei ATA-Kabel und somit auch zwei Schnittstellen, die der Computer (hier auch Host genannt) ansteuern kann.  Da immer nur eines dieser bunte-Tüte-Kabel Daten übertragen kann, haben sich Ingenieurwissenschaftlerinnen eine hierarchische Abfolge ausgedacht: das Master und Slave – Prinzip. Das bedeutet, dass eine Schnittstelle die Chefin der Datenübertragung ist und die zweite Schnittstelle nur als untergordnete Mitarbeiterin arbeiten darf.

Die Master-Schnittstelle darf immer prioritär die Daten übertragen. Die Slave-Schnittstelle darf nur ein Datenbus innerhalb der ATA-Kabel weiterleiten, wenn die Master-Schnittstelle gerade nichts zu tun hat. Denn es gibt nur eine Buslinie, aber zwei Datenkabel. Der Slave muss immer zuerst Master fragen, ob er ebenfalls mit seinen Daten die Buslinie abfahren darf. Das unterwürfige Abfragen des Slave nennt sich polling. Ansonsten verteilt der Master verteilt einfach ungefragt Datenpakete an den Slave.

ATA bedeutet die fortgeschrittenere Version („Advanced Technology Attachment“) dieser Kabel, der Standard für Rechner im Jahr 2018. IDE ist die ältere Version („Integrated Device Electronics – ein fest im Computergehäuse integriertes Kabel). Über die Standardnorm, ob alle Rechner nur mit IDE- oder ATA-Schnittstellen verkauft werden sollten,  gab es damals viel Streit im amerikanischen Normenkontrollkommittee. ATA-Kabel-Befürworterinnen haben den Streit gewonnen und ihre Kabel sind auch noch heute in Laptops zu finden.