SOA: Die Vorteile lose gekoppelter Web-Services

Lose gekoppelte Komponenten können problemlos unabhängig voneinander agieren. Daher eignen sie sich hervorragend zur Entwicklung von Web-Services, in denen nicht alle Komponenten ständig verfügbar sind. ZDNet erklärt verschiedene Koppelungsarten und beschreibt die Vorteile einer serviceorientierten Architektur.

Der Begriff „Koppelung“ bezeichnet gewöhnlich das Verbinden zweier Dinge miteinander, etwa die Glieder einer Kette. In der Software-Entwicklung bezieht sich das Wort Koppelung jedoch auf den Grad, in dem Komponenten oder Module voneinander abhängig sind. Der Grad der Koppelung bestimmt, ob sie in einer eng gekoppelten oder einer lose gekoppelten Bindung zueinander stehen. Bei eng gekoppelten Objekten müssen zum Zeitpunkt der Ausführung und des Kompilierens alle Komponenten und alle Hilfsobjekte präsent sein. Lose verknüpfte Objekte können hingegen unabhängig voneinander agieren.

Koppelung beim Kompilieren

Bei der Software-Programmierung werden Koppelungen erzeugt, wenn ein Entwickler normale Programmiertechniken einsetzt, um eine oder mehrere Komponenten miteinander zu verbinden. Wenn zum Beispiel ein C- oder C++-Entwickler eine externe Quelldatei in eine weitere Quelldatei integriert, wird eine Koppelung erstellt. Jeder import– oder include-Befehl stellt eine Koppelung zwischen der aktuellen Klasse oder Datei und der importierten Klasse oder Datei dar. Der folgende Programmabschnitt demonstriert das:



In diesem Programmabschnitt befinden sich zwei Zeilen, die externe Dateien importieren. Der erste Befehl enthält eine Datei namens externalstructs.h, in der MyStruct definiert ist. Der zweite Befehl enthält eine Datei namens externalprocs.h, die die Prozedur dumpStructContents definiert.

Da der Programmabschnitt in C geschrieben ist, werden alle Abhängigkeiten zum Zeitpunkt des Kompilierens erzeugt. Man bezeichnet das als frühe Bindung. Die zum Zeitpunkt des Kompilierens im Programmabschnitt erzeugten Abhängigkeiten sind sehr eng gekoppelt. Jede Änderung an der Struktur von MyStruct oder der Signatur von dumpStructContents erfordert ein erneutes Kompilieren der Datei, die doSomething enthält, und jener, die dumpStructContents enthält.

Koppelung während der Laufzeit

Eine Koppelung findet ebenfalls statt, wenn zwei interagierende Komponenten sich zur Laufzeit im selben Verarbeitungsraum befinden müssen. Diese Art der Koppelung legt fest, dass der Einsatz der einen Komponente vom Vorhandensein der anderen abhängt.

Eine zeitabhängige Koppelung findet statt, wenn eine Komponente in Laufzeit eine Anforderung an eine andere richtet und auf die Antwort der angesprochenen Komponente warten muss. Diese Art der Koppelung nennt man synchroner Aufruf. Sie kann eine Anwendung lahmlegen, falls ein bestimmter Prozess mehr Zeit benötigt, als der Aufrufende entbehren kann. Asynchrone Aufrufe stellen eine Möglichkeit dar, die Komponenten in zeitlicher Hinsicht zu entkoppeln.

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

ZDNet für mobile Geräte
ZDNet-App für Android herunterladen Lesen Sie ZDNet-Artikel in Google Currents ZDNet-App für iOS

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu SOA: Die Vorteile lose gekoppelter Web-Services

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *