Wie viele wissen, steigt die mobile Entwicklung heutzutage rasant an und ich glaube, sie wirkt sich auf das aus, was wir codieren. Um genau zu sein, bin ich daran interessiert, Webdienste für eine mobile Anwendung zu entwickeln.
Ich sehe zwei mögliche Architekturen - RPC und REST. Ich habe sowohl REST- als auch RPC-Dienste entwickelt und festgestellt, dass RPC-Dienste viel einfacher zu codieren sind, insbesondere in Sprachen wie PHP. Das Problem dabei scheint die Skalierbarkeit zu sein - die Serverseite kann leicht zu einem Chaos werden, wenn viele Prozeduren vorhanden sind.
REST hingegen scheint viel strukturierter zu sein, die Serverseite ist relativ einfach zu warten, kann jedoch Daten in mehrere Ressourcen aufteilen, was für mobile Anwendungen (aus mehreren Gründen) schlecht ist.
Nach meinen Erfahrungen scheint RPC in den meisten Fällen etwas besser zu sein:
- Sowohl die Client- als auch die Serverseite sind bemüht, die Anzahl der verfügbaren Prozeduren und getätigten Anrufe zu minimieren.
- Das Befolgen von Architekturregeln wirkt nicht mit ansonsten möglichen Optimierungen entgegen.
Ich erwarte nicht wirklich, dass mir jemand erklärt, was REST und RPC sind, das Web ist voll davon. Ich möchte, dass Leute, die Erfahrung mit der Entwicklung mobiler Apps haben, ihre Meinung zur Verwendung dieser beiden Architekturen auf der Serverseite äußern. Trinkgelder sind ebenfalls willkommen (wer liebt Trinkgelder nicht?).