Query-Language im Test: spricht die Zukunft GraphQL?

 09. Mai 2019,  Team media.tel

 

Unserer Meinung nach ist GraphQL die Zukunft und wird klassische REST-APIs nach und nach ablösen.

Facebook mag nerven, die hausinterne Entwicklung hat trotzdem ausgesprochen viel zu bieten und hin und wieder entstehen Perlen. GraphQL ist so eine Perle.

In einer unserer letzten Team-Learning-Sessions haben wir uns mit den Möglichkeiten und Begrenzungen dieser Open-Source-Datenabfrage- und Manipulationssprache auseinandergesetzt. 

Warum wir GraphQL empfehlen?

Anstatt wie bei REST verschiedene Endpoints für jeden Screen maßgeschneidert anzufertigen, „holt“ man sich via GraphQL genau die Daten die man braucht, in genau 1 Request.

Vorteil dadurch: weniger Requests pro Seite -> bessere Performance und wir alle wissen: Performance is everything

Mehr Flexibilität für Frontend Entwickler?

Bedingt - dafür aber clean Code!

GraphQL erfordert ein 100% definiertes API-Schema bevor entwickelt wird. Somit ist eine enge Abstimmung zwischen Front- und Backend erforderlich (enger als vielleicht bisher bei REST-APIs gewohnt). GraphQL verlangt ein sehr strikt definiertes Schema, was den Entwicklern wenig Raum für Unsauberkeiten gibt, was natürlich gut ist ... aber die Flexibilität drastisch reduziert.

Bestehende REST-Projekte umbauen?

Der Umbau bestehender REST-Projekte auf GraphQL ist aufgrund des strikten Schemas äußerst umfangreich und somit in der Praxis wahrscheinlich selten möglich.

Für neue Projekte werden wir künftig definitiv auf GraphQL zurückgreifen. GraphQL Endpoints können übrigens auch neben klassischen REST-Endpoints in einem Projekt existieren - dies ist/wird Realität.

 

2018 wurde das GraphQL Projekt von Facebook aus- und in die GraphQL Foundation unter dem Dach von Linux eingegliedert.

Gerne beantworten wir Fragen rund um dieses und andere Entwickler-Themen, die unserem TechStack entsprechen.