SOA: Die Vorteile lose gekoppelter Web-Services

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.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

SmokeBuster bekämpft SmokeLoader

Malware SmokeLoader wird weiterhin von Bedrohungsakteuren genutzt, um Payloads über neue C2-Infrastrukturen zu verbreiten.

44 Minuten ago

Taugen Kryptowährungen als Unterstützer der Energiewende?

Bankhaus Metzler und Telekom-Tochter MMS testen, inwieweit Bitcoin-Miner das deutsche Stromnetz stabilisieren könnten.

17 Stunden ago

Supercomputer-Ranking: El Capitan überholt Frontier und Aurora

Mit 1,7 Exaflops ist El Capitan nun der dritte Exascale-Supercomputer weltweit. Deutschland stellt erneut den…

21 Stunden ago

Ionos führt neue AMD-Prozessoren ein

Der deutsche Hyperscaler erweitert sein Server-Portfolio um vier Angebote mit den neuen AMD EPYC 4004…

21 Stunden ago

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…

22 Stunden ago

GenKI-Fortbildung immer noch Mangelware

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

22 Stunden ago