Befehlsmuster
Befehlsmuster, auch Command Pattern genannt, ist ein verhaltensbasiertes Entwurfsmuster der Softwareentwicklung. Es kapselt eine Anfrage als eigenständiges Objekt, wodurch der Auslöser einer Aktion von deren Ausführung entkoppelt wird. Dadurch lassen sich Parameterisierung von Clients, Warteschlangen, Scheduling, Logging und Undo-/Redo-Funktionalität realisieren.
Die zentrale Struktur besteht aus folgenden Rollen: Command definiert eine Schnittstelle, meist eine Methode execute; ConcreteCommand
Anwendungsbeispiele: In GUI-Anwendungen steuern Buttons oder Menüs Commands; Makros bündeln mehrere Befehle; Transaktionen oder Aufgabenwarteschlangen; Undo-Unterstützung
Vorteile: Entkopplung von Sender und Empfänger, erweiterbare Funktionalität, einfache Undo/Redo-Unterstützung, Flexibilität durch Makro-Befehle. Nachteile: Zunahme der
Historie: Beschrieben in den Design Patterns (Gang of Four), 1994; seither breite Anwendung in Frameworks und