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

Gefahren im Foxit PDF-Reader

Check Point warnt vor offener Schwachstelle, die derzeit von Hackern für Phishing ausgenutzt wird.

1 Stunde ago

Bitdefender entdeckt Sicherheitslücken in Überwachungskameras

Video-Babyphones sind ebenfalls betroffen. Cyberkriminelle nehmen vermehrt IoT-Hardware ins Visier.

2 Stunden ago

Top-Malware in Deutschland: CloudEye zurück an der Spitze

Der Downloader hat hierzulande im April einen Anteil von 18,58 Prozent. Im Bereich Ransomware ist…

2 Stunden ago

Podcast: „Die Zero Trust-Architektur ist gekommen, um zu bleiben“

Unternehmen greifen von überall aus auf die Cloud und Applikationen zu. Dementsprechend reicht das Burg-Prinzip…

17 Stunden ago

Google schließt weitere Zero-Day-Lücke in Chrome

Hacker nutzen eine jetzt gepatchte Schwachstelle im Google-Browser bereits aktiv aus. Die neue Chrome-Version stopft…

19 Stunden ago

Hacker greifen Zero-Day-Lücke in Windows mit Banking-Trojaner QakBot an

Microsoft bietet seit Anfang der Woche einen Patch für die Lücke. Kaspersky-Forscher gehen davon aus,…

20 Stunden ago