loader from loading.io

#122 - Was ist eigentlich eine API?

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Release Date: 10/25/2019

#133 - Was ist eigentlich WIPS? show art #133 - Was ist eigentlich WIPS?

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Heute dreht sich alles um das Thema: „Was ist eigentlich ein WIPS?”    Bevor ich Ihnen diese Frage beantworte, möchte ich kurz -der Verständlichkeit halber- auf die Begrifflichkeiten Intrusion Detection System und Intrusion Prevention System eingehen.   Intrusion Detection Systeme (IDS) und Intrusion Prevention Systeme (IPS) sind beides Bestandteile der Netzwerkinfrastruktur und dienen dazu den Datenverkehr in Netzwerken vor Gefahren bzw. Angriffen zu schützen. Das Intrusion Detection System, kurz IDS, ist dabei in der Lage, anhand bestimmter Muster Angriffe auf...

info_outline
#132 - Was ist eigentlich eine Bandbreite? show art #132 - Was ist eigentlich eine Bandbreite?

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Diese Folge wird unterstützt von Blinkist. Unter erhaltet ihr 25% auf das Jahresabo Blinkist Premium. Heute dreht sich alles um das Thema: „Was ist eigentlich eine Bandbreite?”  Zunächst einmal müssen Sie wissen, dass der Begriff "Bandbreite" in zwei verschiedenen Kontexten verwendet werden kann: In digitalen Systemen wird der Begriff Bandbreite oft als Synonym für die Übertragungsgeschwindigkeit oder die Übertragungskapazität verwendet. Die synonyme Verwendung der Begriffe geht auf den Zusammenhang zwischen Bandbreiten und Übertragungsraten zurück. Die Bandbreite stellt...

info_outline
#131 - Weihnachtsgrüsse - IT Manager Podcast 2020 show art #131 - Weihnachtsgrüsse - IT Manager Podcast 2020

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Liebe IT-Profis, wir betreiben den IT Manager Podcast nun schon bereits seit über 3,5 Jahren. Mit mittlerweile über 130 Episoden haben wir bereits viele IT-Begriffe erklärt und konnten vielen Zuhörern damit eine stetige Weiterbildung ermöglichen. Wir würden gerne wissen, wie soll es in 2020 für Euch weitergehen? Wie oft hört ihr unseren Podcast? Soll es weiterhin einmal wöchentlich ein Episode geben? Welche Themen wünscht ihr Euch für die Zukunft? Macht mit bei unserer Umfrage auf unserer Website unter innovativeIT.de Eine schöne und besinnlich Weihnachtszeit wünsche ich. Wir sind...

info_outline
#130 - Was ist ein Wireless Access Point? show art #130 - Was ist ein Wireless Access Point?

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Bei einem Wireless Access-Point, kurz WAP, handelt es sich vereinfacht ausgedrückt um eine Hardwarekomponente, die als Schnittstelle zwischen dem LAN- und dem WLAN-Netzwerk fungiert und mehreren Notebooks und anderen mobilen Endgeräte gleichzeitig den Zugriff auf Netzwerkressourcen und gegebenenfalls das Internet ermöglicht. Wireless Access Points kommen hauptsächlich bei kleineren bis großen Netzwerkinstallationen zum Einsatz. Sie dienen zur Verstärkung des Funksignals und vergrößern somit die Reichweite des WLAN-Signals im gesamten Netzwerk. Das ist insofern von Vorteil, wenn es...

info_outline
#129 - Was bedeutet TPM? show art #129 - Was bedeutet TPM?

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Die Abkürzung TPM steht für Trusted Platform Module. Es handelt sich hierbei um einen Mikrochip, der Computer oder ähnliche Geräte um grundlegende Sicherheitsfunktionen erweitert, um die Plattformintegrität sicherzustellen. Sobald es auf einem System installiert ist, dient es zur sicheren Hinterlegung von Schlüsseln, Passwörtern und digitalen Zertifikaten, um eine Plattform-Validierung zu ermöglichen, eine zentrale Vertrauensbasis einzurichten und die Voraussetzungen für das Management von Anwender-Legitimationen zu schaffen. Außerdem lässt sich mit dem TPM verifizieren, dass an der...

info_outline
#128 - Was ist eigentlich ein Hotspot? show art #128 - Was ist eigentlich ein Hotspot?

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Bevor ich Ihnen diese Frage beantworte, möchte ich ganz kurz auf zwei Begriffe eingehen, die häufig in Zusammenhang mit Hotspots genannt werden: WLAN und WiFi Die Abkürzung WLAN steht für Wireless Local Area Network und bedeutet zu Deutsch: Drahtloses lokales Netzwerk. Die Verbindung zum Internet erfolgt also drahtlos über einen sogenannten WLAN-Router. Der wesentliche Unterschied zu einem normalen LAN ist, dass das Endgerät beispielsweise ein Notebook nicht mit einem Kabel, sondern über ein Funksignal mit dem Internet verbunden ist. WLANs zeichnen sich durch ihre große Sendeleistung,...

info_outline
#127 - Was ist FTP? show art #127 - Was ist FTP?

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Die Abkürzung FTP steht für File-Transfer-Protocol und ist die englische Bezeichnung für „Dateiübertragungsprotokoll”. Bei diesem Protokoll handelt es sich genauer gesagt um ein Netzwerkprotokoll, welches den Transfer von Daten zwischen einem Server und Client in einem IP-Netzwerk ermöglicht. Die ursprüngliche Spezifikation des File-Transfer-Protocol wurde am 16. April 1971 als veröffentlicht. RFC steht für Request for Comments und bezeichnet ein formelles Dokument der Internet Engineering Task Force. Im Oktober 1985 wurde mit die heute noch gültige Spezifikation des File...

info_outline
#126 - Was ist eigentlich ein Captcha? show art #126 - Was ist eigentlich ein Captcha?

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Jeder kennt sie, niemand mag sie: CAPTCHAs. Vermutlich haben Sie auch des Öfteren Straßenschilder abgetippt, verzerrte und oftmals undefinierbare Ziffern wiedergegeben oder auch nur Tierbilder ausgewählt, um zu bezeugen, dass sie kein Roboter, sondern ein echter Webseitenbesucher mit Herz & Seele sind, richtig?   Der Begriff “CAPTCHA” steht für “Completely Automated Public Turing test to tell Computers and Humans Apart”. Frei übersetzt handelt es sich dabei also um einen „Test zur Unterscheidung zwischen Menschen und Computer“. CAPTCHAs dienen der IT-Sicherheit und...

info_outline
#125 - Was ist der Bitlocker? show art #125 - Was ist der Bitlocker?

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Heute dreht sich alles um das Thema: „Was ist eigentlich ein Bitlocker?”    Bei BitLocker handelt es sich um eine Sicherheitsfunktion von Microsoft, die in bestimmten Versionen des Windows-Betriebssystems integriert ist und eine Verschlüsselung der Systemlaufwerke, Festplatten oder Wechseldatenträger ermöglicht. Dadurch bleiben die Daten bei Diebstahl oder beim physischen Entfernen einer Festplatte aus einem Rechner geschützt. Die BitLocker-Laufwerkverschlüsselung sorgt in erster Linie dafür, dass Nutzer Daten nur dann lesen oder schreiben können, wenn sie über das...

info_outline
#125 - Was ist eigentlich ein Ryuk? show art #125 - Was ist eigentlich ein Ryuk?

IT Manager Podcast (DE, german) - IT-Begriffe einfach und verständlich erklärt

Heute dreht sich alles um das Thema: „Was ist eigentlich ein Ryuk?”    Bei Ryuk handelt es sich um einen neuen hochriskanten Verschlüsselungstrojaner, der gezielt große Unternehmen und staatliche Behörden angreift, um immens hohe Lösegelder für die Entschlüsselung verschlüsselter Datenbestände zu fordern.   Der Verschlüsselungstrojaner Ryuk trat erstmals im August 2018 in Erscheinung und erwirtschaftete seitdem mindestens 705 Bitcoins Lösegeld – umgerechnet entspricht das derzeit 2,25 Millionen Euro. Aufgrund seiner Ähnlichkeit mit der Ransomware Hermes, gehen...

info_outline
 
More Episodes

Heute dreht sich alles um das Thema: „Was ist eigentlich eine API?”

 

Der Begriff API stammt aus dem Englischen und ist die Kurzform von „Application-Programming-Interface". Frei ins Deutsche übersetzt bedeutet das, so viel wie „Schnittstelle zur Anwendungsprogrammierung“. Allerdings wird die API umgangssprachlich meistens als Programmierschnittstelle bezeichnet und ist für das moderne Programmieren unerlässlich.

Generell dienen Programmierschnittstellen zur Kommunikation, zum Austausch sowie zur Weiterverarbeitung von Daten und Inhalten zwischen verschiedenen Geräten, Programmen, Websites oder Anbietern. So ermöglichen APIs zum Beispiel die Fernsteuerung der heimischen Heizung, indem sie die Temperaturwerte, die von einem Thermostat gemessenen wurden, über eine Cloud zum Smartphone des Endverbrauchers übermitteln.

Im Gegensatz zu einer Benutzerschnittstelle kommunizieren die Anwendungen direkt miteinander und nicht der Menschen mit einem System. Mal angenommen ein Internetnutzer bestellt einen Fernseher im Webshop. Dann kommuniziert er nur über die Weboberfläche des Onlineshops. Das Shopsystem selbst kann über die Programmierschnittstelle die Kundenbonität erfragen, die Zahlung per Kreditkarte oder Paypal veranlassen, bei einer Versicherung eine Garantieverlängerung abschließen und einen Spediteur beauftragen.

In anderen Unternehmensprozessen gewährleisten Programmierschnittstellen beispielsweise den Austausch sowie die Weiterverarbeitung von Daten und Inhalten zwischen Customer Relationship Management (CRM), Dokumentenmanagementsystem (DMS) und Enterprise-Resource-Planning (ERP) über die Cloud.

Aber wie funktioniert die API nun genau?

Die Programmierschnittstelle dient wie bereits erwähnt dazu, Soft- und Hardwarekomponenten wie Anwendungen, Festplatten oder Benutzeroberflächen zu verbinden, sprich mit einer API können zwei Anwendungen, die voneinander unabhängig sind, problemlos interagieren und Inhalte, Ressourcen und Daten austauschen. Die Übergabe von Daten und Befehlen erfolgt dabei strukturiert nach einer zuvor definierten Syntax*.

Hierzu werden einzelne Programmteile, die spezifische Funktionen erfüllen, vom Rest des Programmes abgekapselt. Die Module kommunizieren untereinander lediglich über die festgelegte API. Dort werden ausschließlich die Daten übergeben, die für den weiteren Programmablauf benötigt werden. Die API definiert dabei, in welcher Form Daten vom Anwendungsmodul entgegengenommen und wieder zurückgegeben werden. Der eigentliche Programmablauf innerhalb des Moduls ist für die API unwichtig.

Im Gegensatz zu einer Binärschnittstelle, kurz ABI, findet in der API die Programmanbindung rein auf der Quelltext-Ebene statt. Zur Bereitstellung einer API gehört meist eine ausführliche elektronische oder aber eine papiergebundene Dokumentation, in der die einzelnen Schnittstellenfunktionen, der genauen Syntax und die möglichen Parameter aufgeführt sind.

 

 

Grundsätzlich können Programmierschnittstellen in verschiedene Typen unterteilt werden: funktionsorientierte APIs, dateiorientierte APIs, objektorientierte APIs, protokollorientierte APIs und die RESTful-API-Schnittstelle.

  • Funktionsorientierte APIs: Die funktionsorientierten Programmierschnittstellen reagieren nur auf Funktionen, wahlweise mit oder ohne Rückgabewert. Auf den Aufruf einer Funktion folgt die Ausgabe eines Referenzwertes (Handle). Dieser Wert dient zum Aufruf weiterer Funktionen, sind alle Funktionen verfügbar, wird das Handle geschlossen.
  • Dateiorientierte APIs: Die dateiorientierten Programmierschnittstellen werden über die Befehle open, read, write und close angesprochen. Gesendete Daten werden mit write geschrieben, sollen Daten empfangen werden, sind diese mit dem read-Kommando einzulesen.
  • Objektorientierte APIs: Die objektorientierten Programmierschnittstelle adressieren definierte Schnittstellen-Pointer, was diesem Schnittstellentyp gegenüber funktionsorientierten Schnittstellen eine erhöhte Flexibilität verleiht. Oft wird mit den Daten auch eine Typ- oder Klassen-Bibliothek übergeben.
  • Protokollorientierte APIs: Die protokollorientierten Programmierschnittstellen befinden sich in keinerlei Abhängigkeit von Betriebssystem oder Hardware, allerdings ist das Übergabeprotokoll stets neu zu implementieren. Um diesen Vorgang zu erleichtern, werden protokollorientierte Schnittstellen im Regelfall von interface- oder funktionsorientierten Schnittstellen gekapselt.
  • RESTful-API-Schnittstelle: Die RESTful-API-Schnittstelle stellt einen Sonderfall dar. Hierbei handelt es sich um eine Schnittstelle für Anfragen im HTTP-Format, der Datenzugriff erfolgt über GET-, PUT-, POST- und DELETE-Befehle.

Programmierschnittstellen sind mittlerweile in vielen Bereichen unterschiedlichster Softwareanwendungen vorzufinden. Im Web-Umfeld kommen APIs häufig bei Online-Shops und Content-Management-Systemen zum Einsatz. Es können dadurch unterschiedliche Bezahldienstleister, Online-Marktplätze, Shop-Bewertungssysteme oder Versanddienstleister und weitere Services mit wenig Aufwand standardisiert an die verschiedenen Systeme angebunden werden. Beispielsweise existieren APIs zu Services wie: Wikipedia, Google Maps, Facebook, Twitter, PayPal, DHL etc.

Bevor wir nun zum Ende unseres heutigen Podcasts kommen, möchte ich auf die Frage eingehen: Welche Vorteile ergeben sich nun durch die Verwendung von Programmierschnittstellen?

 

Einer der vielen Vorteile ist es, die Entwicklung von Software zu vereinfachen, indem komplizierte und zeitaufwendige Aufgaben automatisiert werden. Das bedeutet, dass bestimmte Aufgaben, die mehrere Stunden in Anspruch nehmen, nun in wenigen Sekunden durchgeführt werden können. Zudem sind die angebundenen Programme weniger fehleranfällig und leichter wartbar, da modulare Programmcodes verwendet werden. Arbeiten einzelne Funktionen fehlerhaft, müssen lediglich die betroffenen Module und die an der API übergebenen Daten genauer geprüft werden.

 

Ein weiterer Vorteil, dass sich aus einer sauber dokumentierten Programmierschnittstelle ergibt, ist die Möglichkeit der Auslagerung von Programmierarbeiten. Die Entwicklung einzelner Teilbereiche einer Software kann dank der Programmierschnittstelle mit geringem Aufwand an eine externe Softwareunternehmen oder freie Entwickler übertragen werden.

 

Zudem können Drittanbieter selbst Funktionen für das System entwickeln. Dadurch steigert sich die Attraktivität und Flexibilität des Gesamtprodukts und es ergeben sich klare Wettbewerbsvorteile.

Allerdings gibt es neben den genannten Vorteilen auch Nachteile: Um andere Anwendungen, Festplatten oder Benutzeroberflächen individuell anbinden zu können, braucht man Programmierkenntnisse. Hat man also keinen Entwickler im Unternehmen, muss man jemanden extern beauftragen. Außerdem benötigt das Entwickeln einer Anbindung Zeit.

Kontakt: Ingo Lücker, ingo.luecker@itleague.de