Serviceorientierte Programmierung für Ansätze bei der Web-Services-Architektur

Ein Service ist ein Kernstück einer Business-Logic, welches protokoll- und ortsunabhängig ist und keinen User-Zustand beinhaltet. Services enthalten keine Präsentationslogik und keine Logik zur Integration mit Daten-Eben-Ressourcen wie beispielsweise Datenbanken. Services beschäftigen sich ausschließlich mit der Lösung von Business-Domain-Problemen.

Services sind sehr lose an andere Komponenten einer Anwendung gekoppelt. Sie sind protokollunabhängig, weshalb auf sie auf verschiedenen Wegen zugegriffen werden kann, und grobkörnig. Dadurch kann der Service in einem einzigen Aufruf seine Business-Logic ausführen und das Ergebnis ausgeben. Ein gutes Beispiel dafür ist ein Service mit dem Namen getAccounts, der die Informationen aller angegebenen Bankkonten eines beliebigen Anwenders ausgibt.

Services arbeiten üblicherweise mit Konfigurationsdaten, um über bestimmte Dinge wie beispielsweise über den Aufruf eines bestimmten Daten-Integrationsmodul zu entscheiden. Allerdings werden die Konfigurationsdaten für individuelle Anwender normalerweise nicht abgespeichert. Services sollten Userdaten zum Beispiel nicht über eine einzelne Anfrage hinaus speichern. Dadurch sind Services Multiuser-fähig (das heißt: ein einzelner Service kann von vielen Anwendern gleichzeitig aufgerufen werden).

Anwendungen werden normalerweise durch das beschrieben, was sie tun, und nicht unbedingt dadurch, was sie sind oder was sie beinhalten. Daher ist es sehr viel einfacher, eine Anwendung mit Hilfe von Verben und nicht über Nomen zu beschreiben. Im Gegensatz dazu arbeitet OOP auf der Grundlage der Beschreibung von Objekten und des in ihnen enthaltenen Zustands und Verhaltens.

In den meisten Distributed-Component-Frameworks (wie zum Beispiel Enterprise Java Beans (EJBs) von J2EE) basieren die wichtigsten für Business-Logic vorgesehenen Einheiten auf einer OOP-Komponente. Da Objekte eine Sache und keine Aktion definieren, kann es beim Versuch der Einkapselung dessen, was eine Komponente tut (und eben nicht ist), zur Sprachdiskrepanz (Impedance Mismatch) kommen.

Im SOP wird eine Anwendung auf sehr viel natürlichere Weise beschrieben. Jede Funktion der Anwendung, die sich verbalisieren lässt, wird wahrscheinlich auch ein Kandidat für einen Service sein.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Lags beim Online-Gaming? DSL-Vergleich und andere Tipps schaffen Abhilfe

Beim Online-Gaming kommt es nicht nur auf das eigene Können an. Auch die technischen Voraussetzungen…

3 Tagen ago

GenKI-Fortbildung immer noch Mangelware

Fast jedes zweite Unternehmen bietet keinerlei Schulungen an. In den übrigen Betrieben profitieren oft nur…

3 Tagen ago

Netzwerk-Portfolio für das KI-Zeitalter

Huawei stellt auf der Connect Europe 2024 in Paris mit Xinghe Intelligent Network eine erweiterte…

3 Tagen ago

Internet-Tempo in Deutschland: Viel Luft nach oben

Höchste Zeit für eine schnelle Kupfer-Glas-Migration. Bis 2030 soll in Deutschland Glasfaser flächendeckend ausgerollt sein.

3 Tagen ago

Erste Entwickler-Preview von Android 16 verfügbar

Schon im April 2025 soll Android 16 den Status Plattformstabilität erreichen. Entwicklern gibt Google danach…

3 Tagen ago

Kaspersky warnt vor Cyberangriff auf PyPI-Lieferkette

Die Hintermänner setzen KI-Chatbot-Tools als Köder ein. Opfer fangen sich den Infostealer JarkaStealer ein.

4 Tagen ago