SIGS DATACOM Fachinformationen für IT-Professionals

SOFTWARE MEETS BUSINESS:
Die Konferenz für Software-Architektur
03. - 07. Februar 2020, München

Sessionsdetails

Vortrag: Do 1.4
Datum: Do, 08.02.2018
Uhrzeit: 17:00 - 18:00
cart

GraphQL eine moderne Lingua Franca für API-Entwicklung

Uhrzeit: 17:00 - 18:00
Vortrag: Do 1.4

 

Vor 3 Jahren hat Facebook mit der Veröffentlichung der GraphQL-Spezifikation frischen Wind in das Thema „API-Design zwischen entfernten Diensten und Anwendungen" gebracht. Die wichtigsten Aspekte von GraphQL ermöglichen eine gemeinsame, schema-basierte domänenspezifische Sprache und flexible, dynamische Abfragen an Schnittstellengrenzen.
Im Vortrag möchte ich GraphQL und REST vergleichen und Vorteile für Entwickler und Architekten anhand konkreter Beispiele in Anwendungs- und API-Entwicklung, Datenquellen- und Systemintegration darstellen.

Zielpublikum: Architekten, Entwickler
Voraussetzungen: Kenntnisse in REST, Domänenmodellen, API-Entwicklung
Schwierigkeitsgrad: Anfänger

Extended Abstract
Seit dem Abgang von SOAP und der Etablierung von REST und HATEOAS für die Kommunikation von Clients mit Services hat sich auf dem Feld der remote APIs nicht viel getan.
Bis vor 2 Jahren Facebook die Spezifikation und Referenzimplementierung ihres API-Protokolls für mobile Anwendungen namens GraphQL veröffentlichte.
Aus pragmatischen Anforderungen heraus entwickelt, macht die Sprache das Leben für Front- und Backend-Entwickler leichter, indem wichtige Kernaspekte explizit gemacht werden.
Der Hauptvorteil ist, dass mittels eines flexiblen Schemas eine domänenspezifische Sprache definiert wird, die das Vokabular an der Grenze zwischen Services und deren Nutzern definiert. Auf der Basis dieses gemeinsamen Verständnisses können beide Seiten unabhängig voneinander entwickeln, die Infrastruktur kümmert sich um die Abbildung flexibler, dynamisch geschachtelter Abfragen auf die verschiedenen Datenquellen, die die angefragten Informationen in Summe bereitstellen.
In diesem Vortrag möchte ich beleuchten, wie die GraphQL-Sprachspezifikation das Leben für Entwickler leichter macht, welche Vor- und Nachteile GraphQL gegenüber REST besitzt und wie ein weitreichendes Tooling und die Unterstützung durch eine sehr aktive Open-Source-Gemeinschaft diesen neuen Ansatz schnell Verbreitung hat finden lassen. Am praktischen Beispiel werden verschieden Architekturansätze diskutiert, von einfacher Kapselung existierender Dienste bis zur dynamischen Bündelung verschiedener Quellen im Rahmen einer „serverlosen" Infrastruktur. Meine praktischen Erfahrungen aus der Entwicklung einer GraphQL-Backend-Infrastruktur werden das Potenzial, aber auch die noch fehlenden Fähigkeiten des Ansatzes aufzeigen.