Skip to content
IRC-Coding IRC-Coding
Singleton Observer Factory Adapter Fassade Proxy

Entwurfsmuster kompakt: Singleton, Observer, Factory, Adapter, Fassade, Proxy (mit Beispiel)

Wichtige Patterns kurz erklärt: Singleton, Observer, Factory, Adapter, Fassade, Proxy – Einsatz, Vor-/Nachteile, Java-Beispiel und typische Prüfungsfragen.

S

schutzgeist

2 min read

Singleton, Observer, Factory, Adapter, Fassade, Proxy

Dieser Beitrag ist eine Begriffserklärung zu sechs häufigen Patterns – inklusive Prüfungsfragen, Beispiel und Tags.

In a Nutshell

Design Patterns liefern bewährte Lösungen für wiederkehrende Struktur- und Kommunikationsprobleme.

Kompakte Fachbeschreibung

  • Singleton: genau eine Instanz (z.B. Konfiguration/Logger)
  • Observer: Publish/Subscribe für Events (z.B. UI)
  • Factory: kapselt Objekterzeugung
  • Adapter: übersetzt inkompatible Schnittstellen
  • Fassade: vereinheitlicht ein Subsystem hinter einer einfachen API
  • Proxy: Stellvertreter zur Zugriffskontrolle, Caching, Logging, Lazy Loading

Prüfungsrelevante Stichpunkte

  • Singleton: eine Instanz, globaler Zugriff
  • Observer: Event-Entkopplung
  • Factory: flexible Objekterzeugung (IHK-relevant)
  • Adapter: Integration/Kompatibilität
  • Fassade: vereinfachte API
  • Proxy: Zugriffskontrolle/Caching (Sicherheit)
  • Patterns dokumentieren und begründen

Kernkomponenten

  1. Singleton-Konstruktor
  2. Observer-Interface
  3. Factory create()
  4. Adapter-Mapping
  5. Fassade-API
  6. Proxy-Zugriffskontrolle

Praxisbeispiel (Singleton in Java)

public class ConfigManager {
  private static ConfigManager instance;
  private ConfigManager() {}
  public static ConfigManager getInstance() {
    if (instance == null) {
      instance = new ConfigManager();
    }
    return instance;
  }
}

Vorteile und Nachteile

Vorteile

  • Wiederverwendbare Lösungen
  • Bewährte Strukturen
  • Bessere Kommunikation im Team

Nachteile

  • Falscher Einsatz → Komplexität
  • Singleton kann Testing erschweren
  • Observer kann Kaskaden erzeugen

Typische Prüfungsfragen (mit Kurzantwort)

  1. Ziel von Singleton? Genau eine Instanz.
  2. Wann Observer? Wenn mehrere Empfänger auf Änderungen reagieren sollen.
  3. Warum Factory statt new überall? Erstellungslogik zentralisieren und entkoppeln.

Weiterführende Infos

  1. https://refactoring.guru/design-patterns
  2. https://github.com/iluwatar/java-design-patterns
Zurück zum Blog
Share:

Ähnliche Beiträge