Tutorials  /  JavaScript

Die Kunst der Entkopplung: Das Bridge Design Pattern in Java

Ccentron Redaktion · Oktober 2024 ·3 Min. Lesezeit ·JavaScript, Tutorial

Entdecken Sie das Bridge Design Pattern in Java, eine Methode, um Abstraktionen und Implementierungen effizient zu entkoppeln. Erfahren Sie, wie Sie Designflexibilität durch Komposition statt Vererbung erreichen. Ideal für Entwickler, die saubere, wartbare und erweiterbare Codebasen gestalten möchten.

Was ist das Bridge Design Pattern?

Das Bridge Design Pattern folgt dem Grundsatz, die Komposition der Vererbung vorzuziehen. Es ermöglicht eine flexible Struktur, in der sowohl die Abstraktion als auch die Implementierung unabhängig voneinander erweitert werden können.

VM

Passende Infrastruktur bei centron

Node-Anwendungen wollen deployt werden: ccloud³ VMs mit vollem Root-Zugriff ab 3,12 € im Monat – oder gleich als Managed Server, wenn der Betrieb nicht bei Ihnen liegen soll. Cloud Server mieten →

Beispiel des Bridge Design Patterns in Java

Um das Bridge Design Pattern besser zu verstehen, betrachten wir ein Beispiel mit Schnittstellenhierarchien sowohl für Schnittstellen als auch für Implementierungen. Die Implementierung des Bridge Design Patterns erfolgt durch die Verwendung von Komposition, wie im folgenden Java-Code dargestellt:

Go
package com.journaldev.design.bridge;

public interface Color {
    void applyColor();
}

package com.journaldev.design.bridge;

public abstract class Shape {
    protected Color color;
    
    public Shape(Color c){
        this.color = c;
    }
    
    abstract public void applyColor();
}

Für die konkreten Implementierungsklassen wie Triangle und Pentagon sieht der Code wie folgt aus:

Go
package com.journaldev.design.bridge;

public class Triangle extends Shape {

    public Triangle(Color c) {
        super(c);
    }

    @Override
    public void applyColor() {
        System.out.print("Triangle filled with color ");
        color.applyColor();
    } 

}

package com.journaldev.design.bridge;

public class Pentagon extends Shape {

    public Pentagon(Color c) {
        super(c);
    }

    @Override
    public void applyColor() {
        System.out.print("Pentagon filled with color ");
        color.applyColor();
    } 

}

Die Implementierungsklassen für RedColor und GreenColor sehen wie folgt aus:

Go
package com.journaldev.design.bridge;

public class RedColor implements Color{

    public void applyColor(){
        System.out.println("red.");
    }
}

package com.journaldev.design.bridge;

public class GreenColor implements Color{

    public void applyColor(){
        System.out.println("green.");
    }
}

Ein Testprogramm zeigt die Anwendung des Bridge Pattern:

Go
package com.journaldev.design.test;

import com.journaldev.design.bridge.GreenColor;
import com.journaldev.design.bridge.Pentagon;
import com.journaldev.design.bridge.RedColor;
import com.journaldev.design.bridge.Shape;
import com.journaldev.design.bridge.Triangle;

public class BridgePatternTest {

    public static void main(String[] args) {
        Shape tri = new Triangle(new RedColor());
        tri.applyColor();
        
        Shape pent = new Pentagon(new GreenColor());
        pent.applyColor();
    }

}

Die Ausgabe dieses Testprogramms demonstriert die Funktionalität des Bridge Pattern:

Code
Triangle filled with color red.
Pentagon filled with color green.

Das Bridge Design Pattern ist besonders nützlich, wenn sowohl die Abstraktion als auch die Implementierung unabhängige Hierarchien haben können und die Implementierungsdetails vor der Client-Anwendung verborgen werden sollen. Es fördert eine saubere Trennung von Verantwortlichkeiten und erleichtert die Wartung und Erweiterung des Codes.

Das könnte Sie auch interessieren

Java-Designmuster: Die Funktionsweise des Chain of Responsibility Patterns

Tiefensuche und Breitensuche: Navigieren von Binärbäumen in Java

Effektives Routing in AngularJS: Ein umfassendes Beispiel mit ngRoute und $routeProvider

Jetzt 200 € Guthaben sichern

Testen Sie Ihr Setup auf ccloud³

Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.

centron Redaktion Technische Redaktion

Das Redaktionsteam von centron schreibt Anleitungen aus dem Betriebsalltag: getestet auf unserer eigenen Plattform, betrieben im Rechenzentrum in Hallstadt bei Bamberg.

Kategorie JavaScript
Teilen
Noch offene Fragen?

Our team will help you with your specific setup - in German or English, by people who run the platform themselves.

War dieses Tutorial hilfreich?

Your answer is stored anonymously and helps us improve our tutorials.

Kommentare

No comments yet - be the first to ask a question about this tutorial.

Sign in to comment

Comments are open to centron customers. Sign in to your account to ask a question about this tutorial.

Weiterlesen

Das könnte Sie auch interessieren

Jetzt kostenlos anfangen

Melden Sie sich an und erhalten Sie in den ersten 60 Tagen ein Guthaben von 200 € bei centron.

Dieses Werbeangebot gilt nur für neue Konten. Angebot ausschließlich für Gewerbetreibende.

Jetzt loslegen Sales kontaktieren