Neues System soll den Umgang mit komplexen Datenladeprozessen in Meteor-Apps verbessern

Meteor setzt künftig auf GraphQL
Kommentare

Datenladeprozesse sind ein integraler Bestandteil aller modernen Web- und Mobile-Apps. Da User jedoch immer mehr von Applikationen erwarten – vor allem in Sachen Performance und reibungsloser Nutzung des UIs – werden die benötigten Datenladevorgänge immer größer und damit aufwändiger. Auch bei Meteor sucht man nach einer Lösung, mit der sich das Laden von Daten weiter vereinfachen und das bestehende Datensystem des Web-Applikations-Frameworks ausbauen lässt.

So gilt das weit entwickelte, dabei jedoch noch immer einfach zu nutzende Datensystem zu den Core-Features von Meteor und erlaubt es Entwicklern, besonders effizient reaktive Daten zu veröffentlichen. Damit ist man bei Meteor nicht allein; auch Software-Entwickler, die auf Framework-Kombinationen wie React/Rails oder Angular/Spring setzen, haben ähnliche Ziele für die Veröffentlichung solcher Daten.

Um sein Datensystem für weitere Apps zu optimieren, sucht das Meteor-Entwicklerteam nun nach einer Lösung, wie sich die Kontrolle über die Reaktivität verbessern und Support für weitere Datenquellen und -clients hinzufügen lässt. Mit der Nutzung von GraphQL könnte so eine Lösung gefunden worden sein – zumindest will das Entwicklerteam künftig auf die Data-Query-Sprache und Runtime setzen, um das Applikations-Datenmanagement in Meteor und anderen JavaScript-Apps langläufig zu verbessern. Im Meteor-Blog hat Sashko Stubailo die Pläne zur Nutzung von GraphQL mit Meteor vorgestellt.

Go for PHP Developers

mit Terrence Ryan (google)

Everything you need to know about PHP 7.2

mit Sebastian Bergmann (thePHP.cc)

Probleme beim Data-Loading

Angesichts der Tatsache, dass Datenladeprozesse immer komplexer werden, stehen die Entwickler von Web-Applikations-Frameworks wie Meteor vor einigen typischen Problemen, wenn sie reaktive, connected-client JavaScript-Apps entwickeln.

Dazu gehört zum Beispiel, dass Meteor derzeit nur MongoDB unterstützt, der Support von anderen Datenbanken und Backends jedoch schon seit langem zu den meist gewünschten Features der Meteor-User zählt. Ebenso gehört die Verknüpfung von Objekten, die Kontrolle über Live-Updates in kollaborativen UI-Features und die Query-Erstellung aus dem UI zu den typischen Problemen mit den Datenladeprozessen.

Die Lösung: GraphQL

Dank ausführlichem Feedback von Meteor-, UI- und Mobile-App-Entwicklern sowie aufgrund der eigenen Erfahrungen aus den letzten vier Jahren, glaubt das Meteor-Entwicklerteam, mit dem Einsatz von GraphQL eine passende Lösung für die genannten Probleme gefunden zu haben. Was man dabei im Einzelnen erstellen will, beschreibt Stubailo folgendermaßen:

Simple and efficient bindings for GraphQL that make it easy to publish data from REST services, SQL, and MongoDB.
Reactive GraphQL queries that track changes to their underlying data, so clients can find out when the results have changed.
Easy client-side query aggregation and fetching so that you can compose and run reactive GraphQL queries on the client, regardless of your view technology – Blaze, React, or Angular.
Optimistic UI support based on lessons learned from 4 years of building optimistic systems within Meteor.
Low-level hooks and options for analyzing and optimizing your queries that make it straightforward to scale your app.

Dabei soll vor allem darauf geachtet werden, dass das gesamte System so modular wie möglich ist, damit die Technologie in den verschiedensten Tools genutzt werden kann und gleichzeitig für eine gute User Experience sorgt. Außerdem soll das neue System leicht in bestehende API- und View-Technologien integrierbar sein; Stubailo betont daher im oben genannten Blogpost:

while we are developing the new system, you should feel confident to keep using current methods and know that the migration will be easy.

Eine tatsächliche Roadmap für die Entwicklung des neuen Systems gibt es allerdings noch nicht; derzeit arbeitet das Entwicklerteam an einem Design- und Implementierungsplan und fordert darum die Community auf, ihr Feedback abzugeben und sich an der Weiterentwicklung der Idee zu beteiligen.

Write solid JavaScript Code with TypeScript

mit Thomas Claudius Huber (Trivadis Services AG)

Unlock the Power of JavaScript Decorators

mit Nir Kaufman (500Tech)

API Summit 2017

Moderne Web APIs mit Node.js – volle Power im Backend

mit Manuel Rauber (Thinktecture), Sven Kölpin (Open Knowledge)

API First mit Swagger & Co.

mit Thilo Frotscher (Freiberufler)

Aufmacherbild: Meteors Rain von Shutterstock / Urheberrecht: yienkeat

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -