Was ist ein API? Herkunft und Verwendung des Begriffs

Ғылым және технология

Was ist ein #API? Der Begriff #Application-Programming-Interface stand ursprünglich für eine Schnittstelle, die es anderen Entwicklern ermöglichte eine Anwendung, ein Systemprogramm oder Hardware aus eigenen Programmen heraus anzusprechen. Um eine Anwendung ohne API anzusprechen, musste man zu Tricks wie z.B. dem Reverse Engineering greifen. Es gab auch "Umwege" über die Datenbank oder über die UI an die Funktionalität einer Anwendung zu gelangen. Diese improvisierten Schnittstellen sind brüchig und können bereits bei der nächsten Programmversion nicht mehr funktionieren.
Für #REST Schnittstellen gab es lange keinen passenden Begriff. "REST Service" ist nicht ganz richtig und "REST Resource" versteht nicht jeder. RESTful Service ist auch nicht besser. Seit einigen Jahren wird in der Community immer häufiger der Begriff API für eine REST Schnittstellte verwendet. Irgendjemand ist auf die Idee gekommen, den Begriff API auszuborgen und auf HTTP basierte remote Schnittstellen wie REST und GraphQL anzuwenden. Passt ja auch irgendwie. Meist handelt es sich um öffentliche Schnittstellen, die es anderen ermöglichen sollen, die eigene Anwendung oder Web Seite als Plattform zu verwenden.
Mehr zum Thema findest du im Artikel: Was ist ein API?
www.predic8.de/was-ist-api.htm
Lerne mehr über APIs in unseren Schulungen:
REST APIs - Die Einführung
www.predic8.de/rest-schulung.htm
REST und API Design mit Swagger
www.predic8.de/api-rest-desig...
Social:
@thomasub
/ thomasub

Пікірлер: 13

  • @ric10407
    @ric104074 жыл бұрын

    Hallo Thomas. Na siehst'e, da weiß ich doch gleich wieder mehr. Zum Glück habe ich dich gefunden & Du hast mir das API-Fragezeichen im Kopf entknotet. Vielen Dank dafür.

  • @OggerFN
    @OggerFN4 жыл бұрын

    Sehr viel besser erklärt als sogar die englischen Videos.

  • @cedrictheblue4091
    @cedrictheblue40914 жыл бұрын

    Danke für das hilfreiche Video :)

  • @ceydaozdemir5426
    @ceydaozdemir54263 жыл бұрын

    Vielen Dank, sehr hilfreich!

  • @kxngklizhy9185
    @kxngklizhy91854 жыл бұрын

    Was ein super gutes Video!

  • @huajunxu3286
    @huajunxu32863 жыл бұрын

    👏👏👏👍

  • @pbw5240
    @pbw52402 жыл бұрын

    Hallo, eine Fotoagentur fragt mich, ob ich API verwende für Videouploads. Trotz der Erklärtexte hier kann ich nicht herausfinden - was bedeutet das für mich? Heisst das, dass ich so eine Schnittstelle für eine externe Agentur installieren soll? Ich denke, dass hat damit zu tun, dass bei Uploads sich das Material qualitativ bei solchen Datenübertragungen "verschlechtert". Aber trotzdem arbeiten die meisten Agenturen mit FTP. "Die eigene Anwendung als Schnittstelle verwenden", heisst was genau?

  • @thomas-bayer

    @thomas-bayer

    2 жыл бұрын

    Ich gehe mal speziell auf die Übertragung von Bildern z.B. bei Agenturen ein. Ja, da wird leider noch sehr oft FTP verwendet. FTP funktioniert, hat aber eine Reihe von Besonderheiten und gilt generell als veraltet. Einige verwenden inzwischen HTTP Uploads oder APIs, bei denen ich per HTTP die Bilder hoch- und herunterladen kann. Wahrseinlich hat die Fotoagentur eine solche API im Sinn, bei der ich mit HTTP PUT Datei heraufladen kann.

  • @pbw5240

    @pbw5240

    2 жыл бұрын

    @@thomas-bayer ok., danke Dir, inzwischen haben die mir geantwortet, aber ich warte noch mal ab, die sind noch nicht soweit.

  • @sotsch9280
    @sotsch92803 жыл бұрын

    Du sprichst in diesem Video davon als sei ein REST -"Service" eher eine Ressource? Finde im Internet zu diesem Thema sehr wenig und wenn dann von 2003 und älter. Was ist der Unterschied zwischen einer Ressource und einem Service? Kann man das heutzutage noch so abgrenzen (also zum Thema API)? Weil im Prinzip liefert ein REST - "Service" doch Ressourcen bzw. verändert diese. Also Finde ich den Begriff REST - Ressource zu eindimensional., was verstehe ich daran nicht? :)

  • @thomas-bayer

    @thomas-bayer

    3 жыл бұрын

    Hallo Sotsch, gut Frage. Das mit den Ressourcen ist eigentlich ganz einfach. Ich versuch das mal kurz zu beschreiben: Das typische an REST, sind die Ressourcen. Eine Ressource hat immer einen Namen die URI z.B.: api.predic8.de/shop/products/44 über die man die Ressource direkt ansprechen kann z.B. mit GET, dann bekommt man nicht die Ressource zurück, da das nicht geht, sondern nur eine Kopie, die Representation. Representation ist nur ein schöneres Wort für Kopie. Man findet Representational auch im Namen von REST. Beim Service kommunizierst du nicht direkt mit einem Geschäftsobjekt, sondern mit einem Service. Du kannst den Service dann bitten, etwas mit einem Geschäftsobjekt zu tun. Beispielsweise deleteProduct(7) ist ein Aufruf an den Service das Produkt mit der Id Nr 7 zu löschen. Mehr dazu findest du auch in unserem neusten Video zum Vergleich von gRPC, GraphQL und REST.

  • @sotsch9280

    @sotsch9280

    3 жыл бұрын

    ​@@thomas-bayer Danke für die schnelle Antwort! Klingt tatsächlich plausibel, war mir nur nicht klar wie man diese Begrifflichkeiten voneinander abgrenzt (technisch).

  • @SalamSalam-bq9vq
    @SalamSalam-bq9vq4 ай бұрын

    Rest wurde von Roy Fielding zum ersten mal verwendet wurde. de.m.wikipedia.org/wiki/Roy_Fielding

Келесі