Skip to content

Commit 1011881

Browse files
committed
Erläuterungen zum Code-Beispiel für das Bridge-Pattern in JavaScript
1 parent be8fea5 commit 1011881

File tree

1 file changed

+19
-1
lines changed

1 file changed

+19
-1
lines changed

Design Pattern in JavaScript/DesignPattern.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,4 +101,22 @@ Damit diese beiden Klassen zusammenarbeiten können, erstellen wir eine Adapterk
101101

102102
Schließlich erstellen wir im Client-Code eine Instanz der ThirdPartyLibrary-Klasse und eine Instanz der TextPrinterAdapter-Klasse und übergeben die ThirdPartyLibrary-Instanz als Parameter an den Konstruktor des Adapters.
103103

104-
Dann rufen wir die displayText-Methode des Adapters mit unserem Text auf, und dieser druckt den Text mit der printText-Methode der ThirdPartyLibrary-Instanz auf die Konsole.
104+
Dann rufen wir die displayText-Methode des Adapters mit unserem Text auf, und dieser druckt den Text mit der printText-Methode der ThirdPartyLibrary-Instanz auf die Konsole.
105+
106+
## Bridge Pattern
107+
108+
Das **[Bridge-Pattern](https://rock-the-prototype.com/software-architektur/bridge-pattern/)** ist ein **Design Pattern für Software**, das dazu dient, eine **Abstraktion von Deiner Implementierung** zu **entkoppeln**, so dass beide Softwarebestandteile unabhängig voneinander änderbar sind, ohne sich gegenseitig zu beeinflussen.
109+
110+
### Code Beispiel zum Bridge Pattern
111+
In der Datei **BridgePattern.js** findest Du eine musterhafte **Implementierung des Bridge-Pattern in JavaScript**.
112+
113+
In diesem JavaScript-Codebeispiel haben wir eine Abstraktion namens GUIComponent, die eine generische GUI-Komponente darstellt. Der GUIComponent-Konstruktor nimmt ein Plattformobjekt auf, das zum Rendern der Komponente auf der entsprechenden Plattform verwendet wird.
114+
115+
Wir haben auch zwei Implementierungen namens WindowsGUI und MacOSGUI, die den plattformspezifischen Code für das Rendern der GUI-Komponente darstellen. Beide Klassen implementieren eine Render-Methode, die die entsprechende Meldung für die jeweilige Plattform ausgibt.
116+
117+
Im Abschnitt über die Verwendung erstellen wir zwei Instanzen von GUIComponent, eine für Windows und eine für MacOS, und übergeben für jede das entsprechende Plattformobjekt. Anschließend rufen wir die Render-Methode für jedes GUIComponent-Objekt auf, die das richtige Plattformobjekt verwendet, um die Komponente auf der entsprechenden Plattform zu rendern.
118+
119+
Dieses Praxisbeispiel zeigt, wie wir das Bridge-Muster verwenden können, um die Abstraktion der GUI-Komponente von ihrer plattformspezifischen Implementierung zu trennen. So können wir in Zukunft problemlos Unterstützung für neue Plattformen hinzufügen, ohne den vorhandenen Code für die GUI-Komponente ändern zu müssen.
120+
121+
122+

0 commit comments

Comments
 (0)