26.12.2014 Aufrufe

img - GitHub Pages

img - GitHub Pages

img - GitHub Pages

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

4.3. RP2 Application Logic 60<br />

Diskussion<br />

REST ist ein immer wichtigerer Architekturstil und wird in dieser Form überall eingesetzt<br />

(siehe Twitter [Twib], Stripe [Str], etc.). Es definiert die wichtigsten Grundbedürfnisse<br />

und überlässt applikationsspezifische Entscheidungen dem Software Entwickler.<br />

Seit einiger Zeit ist es immer wichtiger eine generische Schnittstelle auch für kleinere<br />

Applikationen zu erstellen. Vielfach wird seit dem aufkommen von Smartphones nicht<br />

nur eine Webseite erstellt, sondern auch entsprechende Apps.<br />

Dadurch dass REST keine Serialisierungsform festlegt, ist es dem Entwickler der<br />

API möglich, verschiedene Datenformate zu unterstützen (siehe auch 4.7 “RP6 Should-<br />

Formats”). Dies ermöglicht beispielsweise die Nutzung eines kompakten Datenformats,<br />

damit insgesamt weniger grosse Daten übertragen werden müssen.<br />

Durch die relativ flexible REST-Definition mit einigen wenigen Randbedingungen tut<br />

sich aber auch ein wichtiger Diskussionspunkt auf: Mit welchem HTTP-Verb (POST<br />

oder PUT) werden Updates gehandhabt Es gibt hier verschiedene Ansichten und die<br />

Diskussion ist bei Weitem nicht abgeschlossen. Eine gute Hilfestellung hierfür bietet<br />

“Stack Overflow - HTTP PUT vs POST in REST” [Comc].<br />

Abschliessend gibt das Projektteam folgenden Rat: Ist eine flexible und generische API<br />

nötig, ist REST eine sehr gute Lösung. Es erlaubt Entwicklern bestehendes Know-How<br />

über die Web-Entwicklung wiederzuverwenden. Zudem wird die API durch die Zustandslosigkeit<br />

skalierbar.<br />

4.3. RP2 Application Logic<br />

Die Logik einer Applikation kann in zwei Kategorien unterteilt werden:<br />

1. Businesslogik<br />

2. Präsentationslogik<br />

Businesslogik<br />

Die Businesslogik beinhaltet das eigentliche Herz der Applikation. Sie legt fest, welche<br />

Zustandsübergänge für Ressourcen möglich sind, welche Daten erlaubt sind und was bei<br />

API-Aufrufen ausgeführt wird.<br />

Zur Businesslogik gehört laut den “ROCA”-Autoren auch die logikbasierte Validierung.<br />

Diese beinhaltet [HST] Funktionalität zur Überprüfung der Korrektheit der übertragenen<br />

Daten im Sinne der Businesslogik.<br />

Präsentationslogik<br />

Bei jeder Aktion eines Benutzers müssen zwei Aktionen durchgeführt werden:<br />

• API-Aufrufe (lokal und remote)<br />

• Darstellung der nächsten Ansicht

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!