Einführung in GraphQL
Was der neue API-Ansatz leistet und was nicht
"Der Architekturstil REST ist aus der modernen Web-Services- und Backend-Entwicklung kaum mehr wegzudenken. Eine RESTful Architektur ist aber nicht zwangsläufig für jede Problemstellung automatisch die optimale Lösung. Motiviert von den Anforderungen datengetriebener, mobiler Clients hat Facebook GraphQL entwickelt, eine API-Beschreibung und -Anfragesprache, die in den letzten Jahren auch über die Grenzen von Facebook hinaus gewachsen ist."
Eine Einführung in GraphQL – genau so lautet der aktuelle Artikel im Java Magazin von Alexander Kirschner und Gernot Pointner, beide Entwickler bei jambit.
Den vollständigen Artikel lesen Sie in der Ausgabe: Java Magazin 5.18 - "Maschinelles Lernen".
Oder direkt hier im jaxenter Online-Medienarchiv.
Unsere jambitees haben sich ausführlich und auf ganz praktische Art und Weise mit dem neuartigen API-Ansatz auseinandergesetzt. Im Vergleich mit REST zeigen sie anhand eines Webshopbeispiels auf, was GraphQL eigentlich leistet:
- Wie funktioniert GraphQL und welche Probleme löst es?
- Wie kann man GraphQL in bestehende Architekturen einbinden?
- Wie lässt sich GraphQL zu REST abgrenzen und wann macht ein Einsatz überhaupt Sinn?
Diese und weitere Fragen beantwortet der Fachartikel mit mehreren Abbildungen und Code-Beispielen.
Obendrein gibt es nützliche Werkzeuge, Tipps und Tricks im Umgang mit dem API-Ansatz. Vorteile und Nachteile werden transparent gemacht, ob beim Caching von Anfragen, der Konformität zur HTTP-Semantik, der Fehlerbehandlung oder Versionierbarkeit.
Das Fazit der beiden Entwickler: Den einen API-Ansatz gibt es nicht, der für alle Projekte die optimale Lösung darstellt. Diese Regel gilt auch für REST und GraphQL. Sowohl mit REST als auch mit GraphQL lassen sich schon heute gute und schlechte APIs bauen.
Zur Leseprobe auf entwickler.de
Zum kompletten Artikel im jaxenter Online-Medienarchiv
Zur Ausgabe des Java Magazin 5.18 - "Maschinelles Lernen"
Die Autoren
Alexander Kirschner, M.Sc. Wirtschaftsinformatik und Senior Software Architect bei Automotive Bavaria
Alexander entwickelt seit 2014 Software bei der jambit GmbH. Nach mehreren Jahren im Bereich C-/C++-Automotive-Infotainment-Entwicklung beschäftigt er sich in letzter Zeit im Bereich Java wieder vermehrt mit verteilten Systemen und insbesondere Microservice-Architekturen. Seine weiteren Schwerpunkte liegen im Bereich agiler Entwicklungsprozesse sowie Continuous Integration and Delivery.
Gernot Pointner, Diplom Informatiker (Univ.) und Senior Software Architect bei Automotive Bavaria
Auch Gernot ist seit 2014 als Entwickler bei der jambit GmbH beschäftigt. Nachdem er in den letzten Jahren Erfahrung mit verschiedensten Technologien sammeln durfte, beschäftigt er sich zurzeit mit verteilten Webservice-Architekturen im Java-Umfeld. Zu seinen weiteren Interessen zählen Concurrency und funktionale Programmierung. Aktuell arbeitet Gernot von unserem neuen Standort Leipzig aus und baut diesen mit auf.
Sie suchen auch nach hochkarätigen Autoren oder Referenten zu einem bestimmten Thema aus dem Bereich der Softwareentwicklung? Dann nehmen Sie mit uns Kontakt auf und schildern uns Ihre Anfrage.
Zu weiteren jambit News
Zu unseren aktuellen Veranstaltungen
Zum jambit Portfolio und Branchenüberblick