Schnittstellen

Kein Anschluss unter dieser Nummer
Kommentare

In vielen Apps wollen Entwickler Schnittstellen zu einem Backend nutzen, um Daten aufzubereiten oder Prozesse zu steuern. Alle nativen Lösungen bringen oft ähnliche Probleme: Kann die Schnittstelle von iOS, Android und Webclients einfach genutzt werden? Begeben wir uns auf Spurensuche.

Generell stellen sich viele Fragen, wenn man die Schnittstellen zu einem Backend betrachtet: Ist es unbedingt nötig, dass Clients pro Plattform ständig manuell angepasst werden müssen? Wie bleibt das API für andere Entwickler leicht nutzbar? Ist die Dokumentation auf dem neuesten Stand? Sind die Aufrufe zum Backend richtig und aktuell oder haben sich Fehler eingeschlichen? Wie ist die Situation zu handhaben, wenn verschiedene Client-API-Versionen im Umlauf sind? Wie kann die Schnittstelle leicht angepasst und erweitert werden? Wie wird das Backend zugänglich für eine Umgebung von Integrationstests? All diese Anforderungen sollen erfüllt werden; bestenfalls so, dass beim Betrieb keine großen Aufwände entstehen. Wie spart man Zeit bei der Schnittstellenwartung und -erweiterung? Zeit, die gegebenenfalls in der Featureentwicklung besser genutzt werden kann. Das und die daraus resultierende Unordnung, der Pflegeaufwand und die Kosten sollen durch Trennung der technischen Beschreibung von dessen Implementierung gelöst werden. Eine Lösung für das Problem ist es, eine Domain Specific Language (DSL) einzuführen, die zugleich Dokumentation und Metabeschreibung unserer Schnittstelle ist. Teile der spezifischen Implementierung werden durch entsprechende, initial entwickelte Generatoren übernommen. Bei der Implementierung sollte man REST oder andere leichtgewichtige HTTP-basierte Protokolle wie JSON RPC verwenden. Um den Overhead beim Datentransfer und Speicherverbrauch zu reduzieren, die Latenzzeiten zu minimieren und eine maximale User Experience zu gewährleisten, sind WS-* Techniken im Mobile-Umfeld generell zu vermeiden. Zum besseren Verständnis soll in einem Beispiel gezeigt werden, wie eine solche DSL genutzt werden kann.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -